[Gc] valgrind-enabled gctest aborts on Fedora 15

Jim Meyering jim at meyering.net
Tue May 10 02:25:33 PDT 2011

Ivan Maidanski wrote:

> Hi.
> Yes. This is expected - it is ok for GC to use uninitiated data in gc_push_root.
>>Hello, I have just built the latest from cvs.
>>Running ./configure && make && make check succeeds,
>>but when running gctest via valgrind, I see many diagnostics
>>that I usually associate with bugs, and finally an abort.
>>Are the many used-uninitialized diagnostics expected?

This invalid, too?
But surely not the following abort?


>>==20527== Thread 3:
>>==20527== Invalid read of size 8
>>==20527==  at 0x4E44DE9: GC_push_all_eager (mark.c:1522)
>>==20527==  by 0x4E463EF: GC_push_all_stack_sections (mark_rts.c:517)
>>==20527==  by 0x4E4DF39: GC_push_all_stacks (pthread_stop_world.c:337)
>>==20527==  by 0x4E458CE: GC_mark_some (mark.c:345)
>>==20527==  by 0x4E3C259: GC_stopped_mark (alloc.c:644)
>>==20527==  by 0x4E3CB23: GC_maybe_gc (alloc.c:391)
>>==20527==  by 0x4E3CCAC: GC_collect_a_little_inner (alloc.c:541)
>>==20527==  by 0x4E3D6FB: GC_allocobj (alloc.c:1302)
>>==20527==  by 0x4E42489: GC_generic_malloc_inner (malloc.c:123)
>>==20527==  by 0x4E42577: GC_generic_malloc (malloc.c:163)
>>==20527==  by 0x4E42973: GC_core_malloc (malloc.c:263)
>>==20527==  by 0x401E40: cons (test.c:188)
>>==20527==  by 0x40203A: reverse1 (test.c:317)
>>==20527==  by 0x402254: tiny_reverse_test (test.c:468)
>>==20527==  by 0x4E4C8D0: GC_inner_start_routine (pthread_start.c:61)
>>==20527==  by 0x4E477A4: GC_call_with_stack_base (misc.c:1539)
>>==20527==  by 0x50A1CD0: start_thread (pthread_create.c:305)
>>==20527==  by 0x5599DFC: clone (clone.S:115)
>>==20527== Address 0x6457660 is on thread 2's stack
>>==20527== Process terminating with default action of signal 6 (SIGABRT)
>>==20527==  at 0x54F0415: raise (raise.c:64)
>>==20527==  by 0x54F1D2A: abort (abort.c:92)
>>==20527==  by 0x4E46E8E: GC_abort (misc.c:1443)
>>==20527==  by 0x4E48B68: GC_write_fault_handler (os_dep.c:3184)
>>==20527==  by 0x50A943F: ??? (in /lib64/libpthread-2.13.90.so)
>>==20527==  by 0x4E3B3B4: GC_get_first_part (allchblk.c:511)
>>==20527==  by 0x4E3B719: GC_allochblk_nth (allchblk.c:785)
>>==20527==  by 0x4E3BB79: GC_allochblk (allchblk.c:629)
>>==20527==  by 0x4E43369: GC_generic_malloc_many (mallocx.c:391)
>>==20527==  by 0x4E4C4D0: GC_malloc (thread_local_alloc.c:161)
>>==20527==  by 0x401F24: small_cons (test.c:264)
>>==20527==  by 0x402088: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)
>>==20527==  by 0x40207B: ints (test.c:334)

More information about the Gc mailing list