SHA256
1
0
forked from pool/glibc
OBS User unknown 2009-06-19 00:51:09 +00:00 committed by Git OBS Bridge
parent bfa9cb6251
commit 7b4ba33fb1
5 changed files with 47 additions and 24 deletions

View File

@ -1,6 +1,13 @@
--- malloc/hooks.c~ 2009-06-08 17:55:07.982329000 +0200
+++ malloc/hooks.c 2009-06-08 17:56:41.178045000 +0200
@@ -276,15 +276,18 @@
2009-06-15 Petr Baudis <pasky@suse.cz>
* malloc/hooks.c (free_check): Do not invoke mem2chunk_check()
without main_arena mutex held.
diff --git a/malloc/hooks.c b/malloc/hooks.c
index 622a815..47d3c85 100644
--- malloc/hooks.c
+++ malloc/hooks.c
@@ -276,25 +276,33 @@ free_check(mem, caller) Void_t* mem; const Void_t *caller;
mchunkptr p;
if(!mem) return;
@ -9,29 +16,34 @@
+#endif
p = mem2chunk_check(mem, NULL);
if(!p) {
+#ifndef ATOMIC_FASTBINS
+ (void)mutex_unlock(&main_arena.mutex);
+#endif
malloc_printerr(check_action, "free(): invalid pointer", mem);
- return;
+ goto out;
return;
}
#if HAVE_MMAP
if (chunk_is_mmapped(p)) {
munmap_chunk(p);
- return;
+ goto out;
}
- }
+ } else
#endif
+ {
#if 0 /* Erase freed memory. */
@@ -293,8 +296,12 @@
- memset(mem, 0, chunksize(p) - (SIZE_SZ+1));
+ memset(mem, 0, chunksize(p) - (SIZE_SZ+1));
#endif
#ifdef ATOMIC_FASTBINS
_int_free(&main_arena, p, 0);
- _int_free(&main_arena, p, 0);
+ _int_free(&main_arena, p, 0);
#else
- (void)mutex_lock(&main_arena.mutex);
_int_free(&main_arena, p);
- _int_free(&main_arena, p);
+ _int_free(&main_arena, p);
+#endif
+out:
+#ifdef ATOMIC_FASTBINS
+ ;
+#else
+ }
+#ifndef ATOMIC_FASTBINS
(void)mutex_unlock(&main_arena.mutex);
#endif
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1f5498c9c2ccb5438487af0541cfe1978c77fa47e2078b793be35149cc8320e7
size 15590281

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f81ecd9bd7b19d230a01b53b34945f5ffd53f8a31af7b68cf056acd396652646
size 15589254

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Thu Jun 18 00:58:47 CEST 2009 - pbaudis@suse.cz
- Fix a dead-lock introduced by the bnc#509398 fix
- Update to glibc-2.10.1-d0f6ed789f of glibc/pb-stable.git glibc-2.10-branch
(Still the same source is used for glibc-ports.) - random minor fixes
-------------------------------------------------------------------
Fri Jun 12 12:19:34 CEST 2009 - pbaudis@suse.cz

View File

@ -54,7 +54,7 @@ BuildRequires: libselinux-devel
%define powerpc_optimize_cpu_cell 0
# optimize_power
%endif
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later
Summary: Standard Shared Libraries (from the GNU C Library)
Group: System/Libraries
Obsoletes: ngpt <= 2.2.2 ngpt-devel <= 2.2.2
@ -69,13 +69,13 @@ Obsoletes: glibc-32bit
Provides: rtld(GNU_HASH)
AutoReqProv: on
Version: 2.10.1
Release: 3
Release: 4
Url: http://www.gnu.org/software/libc/libc.html
PreReq: filesystem
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# The glibc source comes from http://repo.or.cz/w/glibc/pb-stable.git
# glibc-2.10-branch.
Source: glibc-%{version}-9cf557216c.tar.bz2
Source: glibc-%{version}-d0f6ed789f.tar.bz2
Source2: glibc-ports-%{version}-2b2b217196.tar.bz2
Source3: noversion.tar.bz2
Source4: manpages.tar.bz2
@ -165,7 +165,7 @@ complete and is partially out of date.
%package html
License: GPL v2 or later; LGPL v2.1 or later
License: GPL v2 or later ; LGPL v2.1 or later
Summary: HTML Documentation for the GNU C Library
Group: Documentation/HTML
AutoReqProv: on
@ -192,7 +192,7 @@ created.
%package locale
License: GPL v2 or later; LGPL v2.1 or later
License: GPL v2 or later ; LGPL v2.1 or later
Summary: Locale Data for Localized Programs
Group: System/Libraries
Requires: glibc = %{version}
@ -244,7 +244,7 @@ necessary for profiling and debugging.
%package devel
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later
Summary: Include Files and Libraries Mandatory for Development
Group: Development/Libraries/C and C++
Obsoletes: epoll = 1.0
@ -267,7 +267,7 @@ library.
%package obsolete
License: BSD 3-Clause; GPL v2 or later; LGPL v2.1 or later
License: BSD 3-clause (or similar) ; GPL v2 or later ; LGPL v2.1 or later
Summary: Obsolete Shared Libraries from the GNU C Library
Group: System/Libraries
Requires: glibc = %{version}
@ -1058,6 +1058,10 @@ exit 0
%{_libdir}/libdl_p.a
%changelog
* Thu Jun 18 2009 pbaudis@suse.cz
- Fix a dead-lock introduced by the bnc#509398 fix
- Update to glibc-2.10.1-d0f6ed789f of glibc/pb-stable.git glibc-2.10-branch
(Still the same source is used for glibc-ports.) - random minor fixes
* Fri Jun 12 2009 pbaudis@suse.cz
- Update to glibc-2.10.1-9cf557216c of glibc/pb-stable.git glibc-2.10-branch
(Still the same source is used for glibc-ports.)