On Nov 18, 2015, at 8:02 AM, Cosmin Paraschiv <[email protected]> wrote: > When using LinuxThreads, malloc bootstrapping deadlocks, since > malloc_tsd_boot0 > ends up calling pthread_setspecific, which causes recursive allocation. Fix > it, > by moving the malloc_tsd_boot0 call to malloc_init_hard_recursible. > > The deadlock has been introduced by commit 8bb3198f72, when tsd_boot was split > and the top half, tsd_boot0, got an extra tsd_wrapper_set call.
This patch causes a test failure (on a Ubuntu 15.04 machine): --- ./autogen.sh --enable-prof --enable-debug && make check [...] MALLOC_CONF="prof:true" /bin/sh test/test.sh test/integration/aligned_alloc test/integration/allocated test/integration/sdallocx test/integration/mallocx test/integration/MALLOCX_ARENA test/integration/overflow test/integration/posix_memalign test/integration/rallocx test/integration/thread_arena test/integration/thread_tcache_enabled test/integration/xallocx test/integration/chunk === test/integration/aligned_alloc === <jemalloc>: include/jemalloc/internal/tsd.h:609: Failed assertion: "tsd_booted" Aborted (core dumped) --- It will probably be at least several weeks before I have a chunk of time to look into this myself, so if you have the time, please get back to me with an updated patch. Thanks, Jason _______________________________________________ jemalloc-discuss mailing list [email protected] http://www.canonware.com/mailman/listinfo/jemalloc-discuss
