--- /dev/fd/63 2012-06-09 12:18:38.355454005 +0200 +++ /dev/fd/62 2012-06-09 12:18:38.355454005 +0200 @@ -82,662 +82,225 @@ SUCCEEDED PASS: cordtest Completed 6 tests -Allocated 10285543 collectable objects +Allocated 10285329 collectable objects Allocated 1212 uncollectable objects Allocated 7500000 atomic objects -Allocated 137703 stubborn objects -Finalized 6602/6602 objects - finalization is probably ok -Total number of bytes allocated is 1141118582 -Final heap size is 30089216 bytes -Completed 270 collections (using 2 marker threads) +Allocated 137760 stubborn objects +Finalized 6612/6612 objects - finalization is probably ok +Total number of bytes allocated is 800293073 +Final heap size is 20819968 bytes +Completed 183 collections Collector appears to work PASS: gctest Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=5, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=6, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=7, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=9, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=10, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=11, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] Leaked composite object at [ADDR] (../master/tests/leak_test.c:19, sz=12, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/leak_test.c:18 [[ADDR]] PASS: leaktest -Final heap size is 131072 +Final heap size is 1536000 PASS: middletest GC_check_heap_block: found smashed heap objects: [ADDR] in or near object at [ADDR] (../master/tests/smash_test.c:22, sz=40) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/smash_test.c:22 [[ADDR]] GC_check_heap_block: found smashed heap objects: [ADDR] in or near object at [ADDR] (../master/tests/smash_test.c:22, sz=40) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/smash_test.c:22 [[ADDR]] - -GC_check_heap_block: found smashed heap objects: - [ADDR] in or near object at [ADDR] (../master/tests/smash_test.c:22, sz=40) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/smash_test.c:22 [[ADDR]] [ADDR] in or near object at [ADDR] (../master/tests/smash_test.c:22, sz=40) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - main:[...]/master.build/../master/tests/smash_test.c:22 [[ADDR]] PASS: smashtest PASS: hugetest Heap size: 65536 Heap size: 131072 +Heap size: 196608 +Heap size: 266240 +Heap size: 356352 +Heap size: 479232 +Heap size: 643072 +Heap size: 860160 +Heap size: 1150976 +Heap size: 1536000 PASS: realloc_test PASS: staticrootstest ****Chosen address [ADDR] in object -[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] +[ADDR] (../master/tests/trace_test.c:19, sz=8, PTRFREE) Reachable via 0 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 1 levels of pointers from offset 0 in object: +Reachable via 1 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 2 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] Reachable via 3 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 4 levels of pointers from offset 4 in object: +Reachable via 4 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 5 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 6 levels of pointers from offset 0 in object: +Reachable via 6 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 7 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 8 levels of pointers from offset 0 in object: +Reachable via 8 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] - -Reachable via 9 levels of pointers from offset 0 in object: -[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 10 levels of pointers from root at [ADDR] +Reachable via 9 levels of pointers from offset 4 in object: +[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) + +Reachable via 10 levels of pointers from offset 0 in object: +[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) + +Reachable via 11 levels of pointers from root at [ADDR] ****Chosen address [ADDR] in object [ADDR] (../master/tests/trace_test.c:19, sz=8, PTRFREE) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc_atomic+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:19 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 0 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 1 levels of pointers from offset 0 in object: +Reachable via 1 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] Reachable via 2 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 3 levels of pointers from offset 4 in object: +Reachable via 3 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] -Reachable via 4 levels of pointers from offset 4 in object: +Reachable via 4 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 5 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 6 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 7 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 8 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 9 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 10 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 11 levels of pointers from root at [ADDR] ****Chosen address [ADDR] in object -[ADDR] (../master/tests/trace_test.c:19, sz=8, PTRFREE) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc_atomic+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:19 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] +[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) Reachable via 0 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 1 levels of pointers from offset 4 in object: +Reachable via 1 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] -Reachable via 2 levels of pointers from offset 0 in object: +Reachable via 2 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 3 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] Reachable via 4 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] Reachable via 5 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 6 levels of pointers from offset 0 in object: +Reachable via 6 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 7 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 8 levels of pointers from offset 4 in object: +Reachable via 8 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] - -Reachable via 9 levels of pointers from offset 0 in object: -[ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 10 levels of pointers from offset 0 in object: +Reachable via 9 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 11 levels of pointers from root at [ADDR] +Reachable via 10 levels of pointers from root at [ADDR] ****Chosen address [ADDR] in object [ADDR] (../master/tests/trace_test.c:19, sz=8, PTRFREE) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc_atomic+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:19 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 0 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] -Reachable via 1 levels of pointers from offset 0 in object: +Reachable via 1 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] -Reachable via 2 levels of pointers from offset 4 in object: +Reachable via 2 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] Reachable via 3 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] -Reachable via 4 levels of pointers from offset 4 in object: +Reachable via 4 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] Reachable via 5 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 6 levels of pointers from offset 4 in object: +Reachable via 6 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 7 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] -Reachable via 8 levels of pointers from offset 4 in object: +Reachable via 8 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:25 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 9 levels of pointers from offset 4 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:24 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 10 levels of pointers from offset 0 in object: [ADDR] (../master/tests/trace_test.c:17, sz=8, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - mktree:[...]/master.build/../master/tests/trace_test.c:18 [[ADDR]] - main:[...]/master.build/../master/tests/trace_test.c:34 [[ADDR]] Reachable via 11 levels of pointers from root at [ADDR] PASS: tracetest Leaked composite object at [ADDR] (../master/tests/thread_leak_test.c:25, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - test:[...]/master.build/../master/tests/thread_leak_test.c:25 [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_inner_start_routine+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_call_with_stack_base+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_start_routine+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libpthread.so.0(+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libc.so.6(clone+[ADDR]) [[ADDR]] Leaked composite object at [ADDR] (../master/tests/thread_leak_test.c:25, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - test:[...]/master.build/../master/tests/thread_leak_test.c:25 [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_inner_start_routine+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_call_with_stack_base+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_start_routine+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libpthread.so.0(+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libc.so.6(clone+[ADDR]) [[ADDR]] Leaked composite object at [ADDR] (../master/tests/thread_leak_test.c:25, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - test:[...]/master.build/../master/tests/thread_leak_test.c:25 [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_inner_start_routine+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_call_with_stack_base+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_start_routine+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libpthread.so.0(+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libc.so.6(clone+[ADDR]) [[ADDR]] Leaked composite object at [ADDR] (../master/tests/thread_leak_test.c:25, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - test:[...]/master.build/../master/tests/thread_leak_test.c:25 [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_inner_start_routine+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_call_with_stack_base+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_start_routine+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libpthread.so.0(+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libc.so.6(clone+[ADDR]) [[ADDR]] Leaked composite object at [ADDR] (../master/tests/thread_leak_test.c:25, sz=4, NORMAL) - Call chain at allocation: - [...]/master.build/.libs/libgc.so.1(GC_debug_malloc+[ADDR]) [[ADDR]] - test:[...]/master.build/../master/tests/thread_leak_test.c:25 [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_inner_start_routine+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_call_with_stack_base+[ADDR]) [[ADDR]] - [...]/master.build/.libs/libgc.so.1(GC_start_routine+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libpthread.so.0(+[ADDR]) [[ADDR]] - /lib/i386-linux-gnu/i686/nosegneg/libc.so.6(clone+[ADDR]) [[ADDR]] PASS: threadleaktest PASS: threadkey_test -subthread_create: created 192 threads (190 ended) +subthread_create: created 196 threads (192 ended) PASS: subthread_create PASS: initsecondarythread usage: test_cpp number-of-iterations @@ -757,9 +320,9 @@ Threaded disclaim test. PASS: disclaim_test fin. ratio time/s time/fin. -regular finalization: 0.9922 33.43 8.03309e-06 - finalize on reclaim: 0.9998 0.58 1.38316e-07 - no finalization: 0.0000 0.48 N/A +regular finalization: 0.9922 25.55 6.13956e-06 + finalize on reclaim: 0.9997 4.8 1.14471e-06 + no finalization: 0.0000 8.11 N/A PASS: disclaim_bench =================== All 16 tests passed @@ -911,10 +474,10 @@ Testing test_and_set Succeeded PASS: test_atomic_pthreads -About 1000000 pushes + 1000000 pops in 1 threads: 34 msecs -About 1000000 pushes + 1000000 pops in 2 threads: 227 msecs -About 1000000 pushes + 1000000 pops in 3 threads: 227 msecs -About 1000000 pushes + 1000000 pops in 4 threads: 214 msecs +About 1000000 pushes + 1000000 pops in 1 threads: 80 msecs +About 1000000 pushes + 1000000 pops in 2 threads: 80 msecs +About 1000000 pushes + 1000000 pops in 3 threads: 90 msecs +About 1000000 pushes + 1000000 pops in 4 threads: 70 msecs PASS: test_stack Testing AO_malloc/AO_free Succeeded