glibc/malloc
Florian Weimer 90c400bd49 malloc: Fix list_lock/arena lock deadlock [BZ #19182]
* malloc/arena.c (list_lock): Document lock ordering requirements.
	(free_list_lock): New lock.
	(ptmalloc_lock_all): Comment on free_list_lock.
	(ptmalloc_unlock_all2): Reinitialize free_list_lock.
	(detach_arena): Update comment.  free_list_lock is now needed.
	(_int_new_arena): Use free_list_lock around detach_arena call.
	Acquire arena lock after list_lock.  Add comment, including FIXME
	about incorrect synchronization.
	(get_free_list): Switch to free_list_lock.
	(reused_arena): Acquire free_list_lock around detach_arena call
	and attached threads counter update.  Add two FIXMEs about
	incorrect synchronization.
	(arena_thread_freeres): Switch to free_list_lock.
	* malloc/malloc.c (struct malloc_state): Update comments to
	mention free_list_lock.
2015-12-21 16:42:46 +01:00
..
arena.c malloc: Fix list_lock/arena lock deadlock [BZ #19182] 2015-12-21 16:42:46 +01:00
Depend
hooks.c
Makefile malloc: Fix attached thread reference count handling [BZ #19243] 2015-12-16 12:39:48 +01:00
malloc.c malloc: Fix list_lock/arena lock deadlock [BZ #19182] 2015-12-21 16:42:46 +01:00
malloc.h
mallocbug.c
mcheck-init.c
mcheck.c Convert a few more function definitions to prototype style. 2015-10-21 11:57:23 +00:00
mcheck.h
memusage.c malloc: remove redundant getenv call 2015-11-24 20:07:12 +03:00
memusage.sh
memusagestat.c
morecore.c
mtrace.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
mtrace.pl Filter out NULL entries. 2015-09-01 08:35:38 -07:00
obstack.c
obstack.h
scratch_buffer_grow_preserve.c
scratch_buffer_grow.c
scratch_buffer_set_array_size.c
set-freeres.c
thread-freeres.c
tst-calloc.c
tst-malloc-backtrace.c Avoid outputting to TTY after an expected memory corruption in testcase 2015-06-05 09:39:49 -03:00
tst-malloc-thread-exit.c malloc: Fix attached thread reference count handling [BZ #19243] 2015-12-16 12:39:48 +01:00
tst-malloc-usable.c
tst-malloc.c
tst-mallocfork.c
tst-mallocstate.c
tst-mallopt.c
tst-mcheck.c
tst-memalign.c
tst-mtrace.c
tst-mtrace.sh
tst-obstack.c
tst-posix_memalign.c
tst-pvalloc.c
tst-realloc.c
tst-scratch_buffer.c
tst-trim1.c
tst-valloc.c
Versions