]> granicus.if.org Git - gc/commit
Fix lock assert violation in GC_gcollect_inner if GC_ALWAYS_MULTITHREADED
authorIvan Maidanski <ivmai@mail.ru>
Wed, 21 Oct 2015 23:50:00 +0000 (02:50 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Wed, 21 Oct 2015 23:50:00 +0000 (02:50 +0300)
commit51e6d83ec158997ad0e4e813f624f0dee47e33bb
treede4168d6fdb44f74bfba0d1a03f1e1e4a2f185b7
parent3224ce8584eb49203d4e58dcc5ebc73d63efee25
Fix lock assert violation in GC_gcollect_inner if GC_ALWAYS_MULTITHREADED

* alloc.c (GC_expand_hp): Do not hold the allocation lock when calling
GC_init.
* malloc.c (GC_alloc_large, GC_generic_malloc_inner): Likewise.
* mallocx.c (GC_generic_malloc_many): Likewise.
* misc.c (GC_enable_incremental): Likewise.
* misc.c (GC_init): Surround GC_gcollect_inner call with LOCK/UNLOCK
(only if GC_ASSERTIONS and GC_ALWAYS_MULTITHREADED otherwise
redundant).
alloc.c
malloc.c
mallocx.c
misc.c