Re: [Gc] valgrind-enabled gctest aborts on Fedora 15

Ivan Maidanski ivmai at mail.ru
Tue May 10 02:13:39 PDT 2011


Hi. 
Yes. This is expected - it is ok for GC to use uninitiated data in gc_push_root. 

Regards

>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]
>_______________________________________________
>Gc mailing list
>Gc at linux.hpl.hp.com
>http://www.hpl.hp.com/hosted/linux/mail-archives/gc/
>
>


More information about the Gc mailing list