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 Update. 1999-10-04 22:59:43 +00:00
hooks.c Fix for test "malloc_usable_size: expected 7 but got 11" 2015-05-19 12:10:26 -07:00
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 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
mallocbug.c Reformat malloc to gnu style. 2014-01-02 09:40:10 +01:00
mcheck-init.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
mcheck.c Convert a few more function definitions to prototype style. 2015-10-21 11:57:23 +00:00
mcheck.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
memusage.c malloc: remove redundant getenv call 2015-11-24 20:07:12 +03:00
memusage.sh Update copyright dates not handled by scripts/update-copyrights. 2015-01-02 16:54:45 +00:00
memusagestat.c Update copyright dates not handled by scripts/update-copyrights. 2015-01-02 16:54:45 +00:00
morecore.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
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 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
obstack.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
scratch_buffer_grow_preserve.c scratch_buffer_grow_preserve: Add missing #include <string.h> 2015-04-07 17:46:58 +02:00
scratch_buffer_grow.c Add struct scratch_buffer and its internal helper functions 2015-04-07 11:03:43 +02:00
scratch_buffer_set_array_size.c Add struct scratch_buffer and its internal helper functions 2015-04-07 11:03:43 +02:00
set-freeres.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
thread-freeres.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-calloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
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 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-malloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-mallocfork.c * malloc/tst-mallocfork.c (do_test): Make sure sa_flags is 2005-12-06 00:50:15 +00:00
tst-mallocstate.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-mallopt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-mcheck.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-memalign.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-mtrace.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-mtrace.sh Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-obstack.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-posix_memalign.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-pvalloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-realloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-scratch_buffer.c scratch_buffer: Suppress truncation warning on 32-bit 2015-04-09 17:12:42 +02:00
tst-trim1.c * malloc/tst-trim1.c: New file. 2007-12-16 22:57:57 +00:00
tst-valloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Versions Add struct scratch_buffer and its internal helper functions 2015-04-07 11:03:43 +02:00