forked from pool/glibc
This commit is contained in:
parent
bfa9cb6251
commit
7b4ba33fb1
@ -1,6 +1,13 @@
|
|||||||
--- malloc/hooks.c~ 2009-06-08 17:55:07.982329000 +0200
|
2009-06-15 Petr Baudis <pasky@suse.cz>
|
||||||
+++ malloc/hooks.c 2009-06-08 17:56:41.178045000 +0200
|
|
||||||
@@ -276,15 +276,18 @@
|
* 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;
|
mchunkptr p;
|
||||||
|
|
||||||
if(!mem) return;
|
if(!mem) return;
|
||||||
@ -9,29 +16,34 @@
|
|||||||
+#endif
|
+#endif
|
||||||
p = mem2chunk_check(mem, NULL);
|
p = mem2chunk_check(mem, NULL);
|
||||||
if(!p) {
|
if(!p) {
|
||||||
|
+#ifndef ATOMIC_FASTBINS
|
||||||
|
+ (void)mutex_unlock(&main_arena.mutex);
|
||||||
|
+#endif
|
||||||
malloc_printerr(check_action, "free(): invalid pointer", mem);
|
malloc_printerr(check_action, "free(): invalid pointer", mem);
|
||||||
- return;
|
return;
|
||||||
+ goto out;
|
|
||||||
}
|
}
|
||||||
#if HAVE_MMAP
|
#if HAVE_MMAP
|
||||||
if (chunk_is_mmapped(p)) {
|
if (chunk_is_mmapped(p)) {
|
||||||
munmap_chunk(p);
|
munmap_chunk(p);
|
||||||
- return;
|
- return;
|
||||||
+ goto out;
|
- }
|
||||||
}
|
+ } else
|
||||||
#endif
|
#endif
|
||||||
|
+ {
|
||||||
#if 0 /* Erase freed memory. */
|
#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
|
#ifdef ATOMIC_FASTBINS
|
||||||
_int_free(&main_arena, p, 0);
|
- _int_free(&main_arena, p, 0);
|
||||||
|
+ _int_free(&main_arena, p, 0);
|
||||||
#else
|
#else
|
||||||
- (void)mutex_lock(&main_arena.mutex);
|
- (void)mutex_lock(&main_arena.mutex);
|
||||||
_int_free(&main_arena, p);
|
- _int_free(&main_arena, p);
|
||||||
|
+ _int_free(&main_arena, p);
|
||||||
+#endif
|
+#endif
|
||||||
+out:
|
+ }
|
||||||
+#ifdef ATOMIC_FASTBINS
|
+#ifndef ATOMIC_FASTBINS
|
||||||
+ ;
|
|
||||||
+#else
|
|
||||||
(void)mutex_unlock(&main_arena.mutex);
|
(void)mutex_unlock(&main_arena.mutex);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:1f5498c9c2ccb5438487af0541cfe1978c77fa47e2078b793be35149cc8320e7
|
|
||||||
size 15590281
|
|
3
glibc-2.10.1-d0f6ed789f.tar.bz2
Normal file
3
glibc-2.10.1-d0f6ed789f.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:f81ecd9bd7b19d230a01b53b34945f5ffd53f8a31af7b68cf056acd396652646
|
||||||
|
size 15589254
|
@ -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
|
Fri Jun 12 12:19:34 CEST 2009 - pbaudis@suse.cz
|
||||||
|
|
||||||
|
18
glibc.spec
18
glibc.spec
@ -54,7 +54,7 @@ BuildRequires: libselinux-devel
|
|||||||
%define powerpc_optimize_cpu_cell 0
|
%define powerpc_optimize_cpu_cell 0
|
||||||
# optimize_power
|
# optimize_power
|
||||||
%endif
|
%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)
|
Summary: Standard Shared Libraries (from the GNU C Library)
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Obsoletes: ngpt <= 2.2.2 ngpt-devel <= 2.2.2
|
Obsoletes: ngpt <= 2.2.2 ngpt-devel <= 2.2.2
|
||||||
@ -69,13 +69,13 @@ Obsoletes: glibc-32bit
|
|||||||
Provides: rtld(GNU_HASH)
|
Provides: rtld(GNU_HASH)
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
Version: 2.10.1
|
Version: 2.10.1
|
||||||
Release: 3
|
Release: 4
|
||||||
Url: http://www.gnu.org/software/libc/libc.html
|
Url: http://www.gnu.org/software/libc/libc.html
|
||||||
PreReq: filesystem
|
PreReq: filesystem
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
# The glibc source comes from http://repo.or.cz/w/glibc/pb-stable.git
|
# The glibc source comes from http://repo.or.cz/w/glibc/pb-stable.git
|
||||||
# glibc-2.10-branch.
|
# glibc-2.10-branch.
|
||||||
Source: glibc-%{version}-9cf557216c.tar.bz2
|
Source: glibc-%{version}-d0f6ed789f.tar.bz2
|
||||||
Source2: glibc-ports-%{version}-2b2b217196.tar.bz2
|
Source2: glibc-ports-%{version}-2b2b217196.tar.bz2
|
||||||
Source3: noversion.tar.bz2
|
Source3: noversion.tar.bz2
|
||||||
Source4: manpages.tar.bz2
|
Source4: manpages.tar.bz2
|
||||||
@ -165,7 +165,7 @@ complete and is partially out of date.
|
|||||||
|
|
||||||
|
|
||||||
%package html
|
%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
|
Summary: HTML Documentation for the GNU C Library
|
||||||
Group: Documentation/HTML
|
Group: Documentation/HTML
|
||||||
AutoReqProv: on
|
AutoReqProv: on
|
||||||
@ -192,7 +192,7 @@ created.
|
|||||||
|
|
||||||
|
|
||||||
%package locale
|
%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
|
Summary: Locale Data for Localized Programs
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Requires: glibc = %{version}
|
Requires: glibc = %{version}
|
||||||
@ -244,7 +244,7 @@ necessary for profiling and debugging.
|
|||||||
|
|
||||||
|
|
||||||
%package devel
|
%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
|
Summary: Include Files and Libraries Mandatory for Development
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Obsoletes: epoll = 1.0
|
Obsoletes: epoll = 1.0
|
||||||
@ -267,7 +267,7 @@ library.
|
|||||||
|
|
||||||
|
|
||||||
%package obsolete
|
%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
|
Summary: Obsolete Shared Libraries from the GNU C Library
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Requires: glibc = %{version}
|
Requires: glibc = %{version}
|
||||||
@ -1058,6 +1058,10 @@ exit 0
|
|||||||
%{_libdir}/libdl_p.a
|
%{_libdir}/libdl_p.a
|
||||||
|
|
||||||
%changelog
|
%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
|
* Fri Jun 12 2009 pbaudis@suse.cz
|
||||||
- Update to glibc-2.10.1-9cf557216c of glibc/pb-stable.git glibc-2.10-branch
|
- 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.)
|
(Still the same source is used for glibc-ports.)
|
||||||
|
Loading…
Reference in New Issue
Block a user