[Gc] valgrind-enabled gctest aborts on Fedora 15

Jim Meyering jim at meyering.net
Thu May 5 13:34:41 PDT 2011


Hello, I have just built the latest from cvs.

For reference, ChangeLog starts with this:
2011-05-05  Ivan Maidanski  <ivmai at mail.ru>

        * dbg_mlc.c (GC_has_other_debug_info): Fix punctuation in the
        comment.

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?


==20527== Memcheck, a memory error detector
==20527== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==20527== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==20527== Command: lt-gctest
==20527== Parent PID: 20526
==20527==
--20527--
--20527-- Valgrind options:
--20527--    -v
--20527--    --log-file=/t/vg-log-2011-05-05.22:18:20-lt-gctest-20527
--20527--    --leak-check=full
--20527--    --track-origins=yes
--20527--    --leak-resolution=high
--20527--    --track-fds=yes
--20527--    --num-callers=20
--20527-- Contents of /proc/version:
--20527--   Linux version 2.6.38.2-9.fc15.x86_64 (mockbuild at x86-03.phx2.fedoraproject.org) (gcc version 4.6.0 20110329 (Red Hat 4.6.0-1) (GCC) ) #1 SMP Wed Mar 30 16:55:57 UTC 2011
--20527-- Arch and hwcaps: AMD64, amd64-sse3-cx16
--20527-- Page sizes: currently 4096, max supported 4096
--20527-- Valgrind library directory: /usr/lib64/valgrind
--20527-- Reading syms from /h/j/w/co/bdwgc/.libs/.vg-tmp/lt-gctest (0x400000)
--20527-- Reading syms from /lib64/ld-2.13.90.so (0x4000000)
--20527--   Considering /usr/lib/debug/.build-id/a6/8305835b0b790f438310c5117b2e9ff972248f.debug ..
--20527--   .. build-id is valid
--20527-- Reading syms from /usr/lib64/valgrind/memcheck-amd64-linux (0x38000000)
--20527--    object doesn't have a dynamic symbol table
--20527-- Reading suppressions file: /usr/lib64/valgrind/default.supp
--20527-- REDIR: 0x40175a0 (strlen) redirected to 0x3805f627 (vgPlain_amd64_linux_REDIR_FOR_strlen)
--20527-- Reading syms from /usr/lib64/valgrind/vgpreload_core-amd64-linux.so (0x4a23000)
--20527-- Reading syms from /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so (0x4c24000)
==20527== WARNING: new redirection conflicts with existing -- ignoring it
--20527--     new: 0x040175a0 (strlen              ) R-> 0x04c28de0 strlen
--20527-- REDIR: 0x4017410 (index) redirected to 0x4c28a00 (index)
--20527-- REDIR: 0x4017490 (strcmp) redirected to 0x4c299e0 (strcmp)
--20527-- Reading syms from /h/j/w/co/bdwgc/.libs/libgc.so.1.0.3 (0x4e2e000)
--20527-- Reading syms from /lib64/libpthread-2.13.90.so (0x509a000)
--20527--   Considering /usr/lib/debug/.build-id/21/fc8fbde60da73f6470caf5552eaeb2610a2269.debug ..
--20527--   .. build-id is valid
--20527-- Reading syms from /lib64/libdl-2.13.90.so (0x52b6000)
--20527--   Considering /usr/lib/debug/.build-id/8b/c1fd5e82867883904388142d7c9822544fb136.debug ..
--20527--   .. build-id is valid
--20527-- Reading syms from /lib64/libc-2.13.90.so (0x54ba000)
--20527--   Considering /usr/lib/debug/.build-id/a6/9d0d7987b68ddabd066b5b438010155eb287bb.debug ..
--20527--   .. build-id is valid
--20527-- REDIR: 0x55404a0 (strcasecmp) redirected to 0x4a235d0 (_vgnU_ifunc_wrapper)
--20527-- REDIR: 0x5542760 (strncasecmp) redirected to 0x4a235d0 (_vgnU_ifunc_wrapper)
--20527-- REDIR: 0x553e530 (__GI_strrchr) redirected to 0x4c287c0 (__GI_strrchr)
--20527-- REDIR: 0x553ca20 (__GI_strlen) redirected to 0x4c28da0 (__GI_strlen)
--20527-- REDIR: 0x5536970 (malloc) redirected to 0x4c283a0 (malloc)
--20527-- REDIR: 0x553ec10 (memchr) redirected to 0x4c29aa0 (memchr)
--20527-- REDIR: 0x5546120 (__GI___rawmemchr) redirected to 0x4c2ab80 (__GI___rawmemchr)
--20527-- REDIR: 0x5537060 (realloc) redirected to 0x4c28470 (realloc)
--20527-- REDIR: 0x5536fd0 (free) redirected to 0x4c27500 (free)
--20527-- REDIR: 0x553f2a0 (memset) redirected to 0x4a235d0 (_vgnU_ifunc_wrapper)
--20527-- REDIR: 0x553f2e0 (__GI_memset) redirected to 0x4c2a990 (memset)
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DEF: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DF4: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E44BF0: GC_mark_and_push_stack (mark.c:1422)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44BFF: GC_mark_and_push_stack (mark.c:1422)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E44C32: GC_mark_and_push_stack (mark.c:1422)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E417D6: GC_find_header (headers.c:40)
==20527==    by 0x4E3DA42: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E417E5: GC_find_header (headers.c:40)
==20527==    by 0x4E3DA42: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E4180F: GC_find_header (headers.c:41)
==20527==    by 0x4E3DA42: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E3DA82: GC_add_to_black_list_stack (blacklst.c:216)
==20527==    by 0x4E44DFE: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E4653E: GC_push_roots (mark_rts.c:785)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DEF: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4DF39: GC_push_all_stacks (pthread_stop_world.c:337)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x40146B5: _dl_runtime_resolve (dl-trampoline.S:42)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DF4: GC_push_all_eager (mark.c:1522)
==20527==    by 0x4E4DF39: GC_push_all_stacks (pthread_stop_world.c:337)
==20527==    by 0x4E45962: GC_mark_some (mark.c:367)
==20527==    by 0x4E3C259: GC_stopped_mark (alloc.c:644)
==20527==    by 0x4E3C95D: GC_try_to_collect_inner (alloc.c:459)
==20527==    by 0x4E47C4B: GC_init (misc.c:1026)
==20527==    by 0x4019A9: main (test.c:1667)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x40146B5: _dl_runtime_resolve (dl-trampoline.S:42)
==20527==

...

==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44FD6: GC_push_marked2 (mark.c:1647)
==20527==    by 0x4E45636: GC_push_next_marked_dirty (mark.c:1833)
==20527==    by 0x4E4589E: GC_mark_some (mark.c:339)
==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 0x4E43336: GC_generic_malloc_many (mallocx.c:296)
==20527==    by 0x4E4C4D0: GC_malloc (thread_local_alloc.c:161)
==20527==    by 0x401F24: small_cons (test.c:264)
==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)
==20527==    by 0x40207B: ints (test.c:334)
==20527==    by 0x40207B: ints (test.c:334)
==20527==    by 0x40207B: ints (test.c:334)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x402060: ints (test.c:330)
==20527==
==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==
==20527== Thread 4:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E3DCC2: GC_promote_black_lists (blacklst.c:147)
==20527==    by 0x4E3C914: GC_try_to_collect_inner (alloc.c:438)
==20527==    by 0x4E3CE49: GC_try_to_collect_general (alloc.c:967)
==20527==    by 0x4E3CF2C: GC_gcollect (alloc.c:993)
==20527==    by 0x403204: run_one_test (test.c:1181)
==20527==    by 0x403668: thr_run_one_test (test.c:1631)
==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==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E39CB0: ??? (in /h/j/w/co/bdwgc/.libs/libgc.so.1.0.3)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E3DA66: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x4E44DFE: 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 0x4E41415: GC_core_gcj_malloc (gcj_mlc.c:195)
==20527==    by 0x401FE2: gcj_cons (test.c:297)
==20527==    by 0x402128: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x402100: gcj_ints (test.c:355)
==20527==
==20527== Use of uninitialised value of size 8
==20527==    at 0x4E3DA6A: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x5068783: ???
==20527==    by 0x745988F: ???
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x402100: gcj_ints (test.c:355)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E3DA6E: GC_add_to_black_list_stack (blacklst.c:207)
==20527==    by 0x4E44DFE: 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 0x4E41415: GC_core_gcj_malloc (gcj_mlc.c:195)
==20527==    by 0x401FE2: gcj_cons (test.c:297)
==20527==    by 0x402128: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x402100: gcj_ints (test.c:355)
==20527==
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E4439E: GC_mark_from (mark.c:731)
==20527==    by 0x4E459B4: GC_mark_some (mark.c:419)
==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 0x4E41415: GC_core_gcj_malloc (gcj_mlc.c:195)
==20527==    by 0x401FE2: gcj_cons (test.c:297)
==20527==    by 0x402128: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==    by 0x40211B: gcj_ints (test.c:359)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
--20527-- REDIR: 0x553c9e0 (strlen) redirected to 0x4a235d0 (_vgnU_ifunc_wrapper)
--20527-- REDIR: 0x55e11a0 (__strlen_sse42) redirected to 0x4c28d80 (strlen)
==20527==
==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)
==20527==
==20527== FILE DESCRIPTORS: 4 open at exit.
==20527== Open file descriptor 3: /t/vg-log-2011-05-05.22:18:20-lt-gctest-20527
==20527==    <inherited from parent>
==20527==
==20527== Open file descriptor 2: /dev/pts/39
==20527==    <inherited from parent>
==20527==
==20527== Open file descriptor 1: /dev/pts/39
==20527==    <inherited from parent>
==20527==
==20527== Open file descriptor 0: /dev/pts/39
==20527==    <inherited from parent>
==20527==
==20527==
==20527== HEAP SUMMARY:
==20527==     in use at exit: 864 bytes in 3 blocks
==20527==   total heap usage: 7 allocs, 4 frees, 1,824 bytes allocated
==20527==
==20527== Searching for pointers to 3 not-freed blocks
==20527== Checked 25,878,600 bytes
==20527==
==20527== Thread 1:
==20527== 288 bytes in 1 blocks are possibly lost in loss record 1 of 2
==20527==    at 0x4C26AF4: calloc (vg_replace_malloc.c:467)
==20527==    by 0x4011854: _dl_allocate_tls (dl-tls.c:297)
==20527==    by 0x50A2907: pthread_create@@GLIBC_2.2.5 (allocatestack.c:575)
==20527==    by 0x4E4D8FA: GC_pthread_create (pthread_support.c:1537)
==20527==    by 0x402406: fork_a_thread (test.c:479)
==20527==    by 0x4026C1: reverse_test_inner (test.c:603)
==20527==    by 0x4E4D54A: GC_call_with_gc_active (pthread_support.c:1148)
==20527==    by 0x4E4D6A2: GC_do_blocking_inner (pthread_support.c:1092)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E477CB: GC_do_blocking (misc.c:1644)
==20527==    by 0x403468: run_one_test (test.c:1190)
==20527==    by 0x403668: thr_run_one_test (test.c:1631)
==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==
==20527== 576 bytes in 2 blocks are possibly lost in loss record 2 of 2
==20527==    at 0x4C26AF4: calloc (vg_replace_malloc.c:467)
==20527==    by 0x4011854: _dl_allocate_tls (dl-tls.c:297)
==20527==    by 0x50A2907: pthread_create@@GLIBC_2.2.5 (allocatestack.c:575)
==20527==    by 0x4E4D8FA: GC_pthread_create (pthread_support.c:1537)
==20527==    by 0x401A0C: main (test.c:1697)
==20527==
==20527== LEAK SUMMARY:
==20527==    definitely lost: 0 bytes in 0 blocks
==20527==    indirectly lost: 0 bytes in 0 blocks
==20527==      possibly lost: 864 bytes in 3 blocks
==20527==    still reachable: 0 bytes in 0 blocks
==20527==         suppressed: 0 bytes in 0 blocks
==20527==
==20527== ERROR SUMMARY: 195722 errors from 131 contexts (suppressed: 6 from 6)
==20527==
==20527== 1 errors in context 1 of 131:
==20527== Thread 4:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E3DCC2: GC_promote_black_lists (blacklst.c:147)
==20527==    by 0x4E3C914: GC_try_to_collect_inner (alloc.c:438)
==20527==    by 0x4E3CE49: GC_try_to_collect_general (alloc.c:967)
==20527==    by 0x4E3CF2C: GC_gcollect (alloc.c:993)
==20527==    by 0x403204: run_one_test (test.c:1181)
==20527==    by 0x403668: thr_run_one_test (test.c:1631)
==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==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E39CB0: ??? (in /h/j/w/co/bdwgc/.libs/libgc.so.1.0.3)
==20527==
==20527==
==20527== 1 errors in context 2 of 131:
==20527== Thread 2:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E3DD13: GC_promote_black_lists (blacklst.c:154)
==20527==    by 0x4E3CAB6: GC_maybe_gc (alloc.c:373)
==20527==    by 0x4E3CCAC: GC_collect_a_little_inner (alloc.c:541)
==20527==    by 0x4E43336: GC_generic_malloc_many (mallocx.c:296)
==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)
==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==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)
==20527==
==20527==
==20527== 1 errors in context 3 of 131:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E3DD0B: GC_promote_black_lists (blacklst.c:151)
==20527==    by 0x4E3CAB6: GC_maybe_gc (alloc.c:373)
==20527==    by 0x4E3CCAC: GC_collect_a_little_inner (alloc.c:541)
==20527==    by 0x4E43336: GC_generic_malloc_many (mallocx.c:296)
==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)
==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==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4E960: GC_with_callee_saves_pushed (mach_dep.c:189)

... many lines elided

==20527== 28114 errors in context 128 of 131:
==20527== Thread 2:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DF4: 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 0x4E45962: GC_mark_some (mark.c:367)
==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 0x4E41415: GC_core_gcj_malloc (gcj_mlc.c:195)
==20527==    by 0x401FE2: gcj_cons (test.c:297)
==20527==    by 0x4020DA: gcj_reverse1 (test.c:345)
==20527==    by 0x4025BF: reverse_test_inner (test.c:578)
==20527==    by 0x4E4D54A: GC_call_with_gc_active (pthread_support.c:1148)
==20527==    by 0x4E4D6A2: GC_do_blocking_inner (pthread_support.c:1092)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E477CB: GC_do_blocking (misc.c:1644)
==20527==    by 0x403468: run_one_test (test.c:1190)
==20527==    by 0x403668: thr_run_one_test (test.c:1631)
==20527==    by 0x4E4C8D0: GC_inner_start_routine (pthread_start.c:61)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4653F: GC_push_roots (mark_rts.c:787)
==20527==
==20527==
==20527== 28322 errors in context 129 of 131:
==20527== Conditional jump or move depends on uninitialised value(s)
==20527==    at 0x4E44DEF: 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 0x4E45962: GC_mark_some (mark.c:367)
==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 0x4E41415: GC_core_gcj_malloc (gcj_mlc.c:195)
==20527==    by 0x401FE2: gcj_cons (test.c:297)
==20527==    by 0x4020DA: gcj_reverse1 (test.c:345)
==20527==    by 0x4025BF: reverse_test_inner (test.c:578)
==20527==    by 0x4E4D54A: GC_call_with_gc_active (pthread_support.c:1148)
==20527==    by 0x4E4D6A2: GC_do_blocking_inner (pthread_support.c:1092)
==20527==    by 0x4E4E9CD: GC_with_callee_saves_pushed (mach_dep.c:273)
==20527==    by 0x4E477CB: GC_do_blocking (misc.c:1644)
==20527==    by 0x403468: run_one_test (test.c:1190)
==20527==    by 0x403668: thr_run_one_test (test.c:1631)
==20527==    by 0x4E4C8D0: GC_inner_start_routine (pthread_start.c:61)
==20527==  Uninitialised value was created by a stack allocation
==20527==    at 0x4E4653F: GC_push_roots (mark_rts.c:787)
==20527==
--20527--
--20527-- used_suppression:      4 U1004-ARM-_dl_relocate_object
--20527-- used_suppression:      2 glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
==20527==
==20527== ERROR SUMMARY: 195722 errors from 131 contexts (suppressed: 6 from 6)

...<5000+ lines elided>...


===============================================================
$ make check
make[1]: Entering directory `/h/j/w/co/bdwgc'
make  libstaticrootslib.la gctest leaktest middletest smashtest hugetest staticrootstest  threadleaktest initsecondarythread
make[2]: Entering directory `/h/j/w/co/bdwgc'
make[2]: `gctest' is up to date.
make[2]: `leaktest' is up to date.
make[2]: `middletest' is up to date.
make[2]: `smashtest' is up to date.
make[2]: `hugetest' is up to date.
make[2]: `staticrootstest' is up to date.
make[2]: `threadleaktest' is up to date.
make[2]: `initsecondarythread' is up to date.
make[2]: Leaving directory `/h/j/w/co/bdwgc'
make  check-TESTS
make[2]: Entering directory `/h/j/w/co/bdwgc'
Switched to incremental mode
Emulating dirty bits with mprotect/signals
Unexpected bus error or segmentation fault
/bin/sh: line 5: 20527 Killed                  ${dir}$tst
FAIL: gctest
Leaked composite object at 0x4253ef0 (tests/leak_test.c:19, sz=8, NORMAL)

Leaked composite object at 0x4254ee0 (tests/leak_test.c:19, sz=9, NORMAL)

Leaked composite object at 0x4254f20 (tests/leak_test.c:19, sz=10, NORMAL)

Leaked composite object at 0x4254f60 (tests/leak_test.c:19, sz=11, NORMAL)

Leaked composite object at 0x4253f20 (tests/leak_test.c:19, sz=4, NORMAL)

Leaked composite object at 0x4253f50 (tests/leak_test.c:19, sz=5, NORMAL)

Leaked composite object at 0x4253f80 (tests/leak_test.c:19, sz=6, NORMAL)

Leaked composite object at 0x4253fb0 (tests/leak_test.c:19, sz=7, NORMAL)

Leaked composite object at 0x4253fe0 (tests/leak_test.c:12, sz=4, NORMAL)

PASS: leaktest
Final heap size is 131072
PASS: middletest
GC_check_heap_block: found smashed heap objects:
 0x4253fe8 in or near object at 0x4253fc0 (tests/smash_test.c:22, sz=40)
GC_check_heap_block: found smashed heap objects:
 0x4253fe8 in or near object at 0x4253fc0 (tests/smash_test.c:22, sz=40)
GC_check_heap_block: found smashed heap objects:
 0x42c6f98 in or near object at 0x42c6f70 (tests/smash_test.c:22, sz=40)
 0x4253fe8 in or near object at 0x4253fc0 (tests/smash_test.c:22, sz=40)
PASS: smashtest
PASS: hugetest
PASS: staticrootstest
Leaked composite object at 0x4255fe0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x4255f20 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x4255ef0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x4255ec0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

Leaked composite object at 0x4255fe0 (tests/thread_leak_test.c:12, sz=4, NORMAL)

PASS: threadleaktest
PASS: initsecondarythread
==================================
1 of 8 tests failed
Please report to Hans.Boehm at hp.com
==================================
make[2]: *** [check-TESTS] Error 1
make[2]: Leaving directory `/h/j/w/co/bdwgc'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory `/h/j/w/co/bdwgc'
make: *** [check-recursive] Error 1
[Exit 2]


More information about the Gc mailing list