================================================= ./valgrind-new/drd/tests/std_thread2.stderr.diff ================================================= --- std_thread2.stderr.exp 2015-11-21 02:50:58.081387883 +0000 +++ std_thread2.stderr.out 2015-11-21 03:09:59.523833225 +0000 @@ -1,4 +1,19 @@ +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl >::~_Impl() (thread:...) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-new/drd/tests/std_thread2) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) +Address 0x........ is at offset 32 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + Thread 2: Conflicting store by thread 2 at 0x........ size 4 at 0x........: main::{lambda()#1}::operator()() const (std_thread2.cpp:21) @@ -6,4 +21,4 @@ Done. -ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) +ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0) ================================================= ./valgrind-new/drd/tests/std_thread.stderr.diff ================================================= --- std_thread.stderr.exp 2015-11-21 02:50:58.108387366 +0000 +++ std_thread.stderr.out 2015-11-21 03:09:57.912860206 +0000 @@ -1,4 +1,84 @@ +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-new/drd/tests/std_thread) + by 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-new/drd/tests/std_thread) + by 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) +Address 0x........ is at offset 32 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + Done. -ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) +ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0) ================================================= ./valgrind-new/exp-sgcheck/tests/preen_invars.stderr.diff-glibc28-amd64 ================================================= --- preen_invars.stderr.exp-glibc28-amd64 2015-11-21 02:50:53.754470678 +0000 +++ preen_invars.stderr.out 2015-11-21 03:11:03.471729536 +0000 @@ -6,4 +6,46 @@ Actual: global array "im_a_global_arr" of size 10 in object with soname "preen_invars_so" -ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) +exp-sgcheck: sg_main.c:559 (add_blocks_to_StackTree): Assertion '!already_present' failed. + +host stacktrace: + at 0x........: show_sched_status_wrk (m_libcassert.c:343) + by 0x........: report_and_quit (m_libcassert.c:415) + by 0x........: vgPlain_assert_fail (m_libcassert.c:481) + by 0x........: add_blocks_to_StackTree (sg_main.c:559) + by 0x........: shadowStack_new_frame.isra.22 (sg_main.c:1883) + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? + by 0x........: _dl_sort_fini (dl-fini.c:41) + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? (in /tmp/vgdb-pipe-shared-mem-vgdb-25698-by-???-on-mock) + by 0x........: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable (lwpid 25698) + at 0x........: _dl_sort_fini (dl-fini.c:121) + by 0x........: _dl_close_worker.part.0 (dl-close.c:233) + by 0x........: _dl_close (dl-close.c:125) + by 0x........: _dl_catch_error (dl-error.c:187) + by 0x........: _dlerror_run (dlerror.c:163) + by 0x........: dlclose (dlclose.c:46) + by 0x........: main (preen_invars.c:48) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-new/exp-sgcheck/tests/preen_invars.stdout.diff ================================================= --- preen_invars.stdout.exp 2015-11-21 02:50:53.752470716 +0000 +++ preen_invars.stdout.out 2015-11-21 03:11:00.791780328 +0000 @@ -1 +0,0 @@ -foo bar 1 ================================================= ./valgrind-new/gdbserver_tests/hgtls.stdoutB.diff ================================================= --- hgtls.stdoutB.exp 2015-11-21 02:50:51.680510363 +0000 +++ hgtls.stdoutB.out 2015-11-21 02:57:15.001175546 +0000 @@ -26,10 +26,10 @@ test static_extern tls_ip 0x........ ip 0x........ equal 1 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; -test so_extern tls_ip 0x........ ip 0x........ equal 1 +test so_extern tls_ip 0x........ ip 0x........ equal 0 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; -test so_extern tls_ip 0x........ ip 0x........ equal 1 +test so_extern tls_ip 0x........ ip 0x........ equal 0 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; test so_local tls_ip 0x........ ip 0x........ equal 1 ================================================= ./valgrind-new/massif/tests/new-cpp.post.diff ================================================= --- new-cpp.post.exp 2015-11-21 02:50:53.601473605 +0000 +++ new-cpp.post.out 2015-11-21 03:01:53.895864132 +0000 @@ -6,54 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: main (new-cpp.cpp:19) + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (new-cpp.cpp:19) | -->33.24% (4,000B) 0x........: main (new-cpp.cpp:20) +->04.72% (4,000B) 0x........: main (new-cpp.cpp:20) | -->16.62% (2,000B) 0x........: main (new-cpp.cpp:21) +->02.36% (2,000B) 0x........: main (new-cpp.cpp:21) | -->16.62% (2,000B) 0x........: main (new-cpp.cpp:22) +->02.36% (2,000B) 0x........: main (new-cpp.cpp:22) -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- - 6 16,040 8,024 8,000 24 0 - 7 20,048 4,016 4,000 16 0 - 8 22,056 2,008 2,000 8 0 - 9 24,064 0 0 0 0 + 7 88,752 80,736 80,704 32 0 + 8 92,760 76,728 76,704 24 0 + 9 94,768 74,720 74,704 16 0 + 10 96,776 72,712 72,704 8 0 ================================================= ./valgrind-new/massif/tests/overloaded-new.post.diff ================================================= --- overloaded-new.post.exp 2015-11-21 02:50:53.592473777 +0000 +++ overloaded-new.post.out 2015-11-21 03:01:54.851846102 +0000 @@ -6,54 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49) + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:49) | -->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50) +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:50) | -->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51) +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:51) | -->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52) +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:52) -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- - 6 16,040 8,024 8,000 24 0 - 7 20,048 4,016 4,000 16 0 - 8 22,056 2,008 2,000 8 0 - 9 24,064 0 0 0 0 + 7 88,752 80,736 80,704 32 0 + 8 92,760 76,728 76,704 24 0 + 9 94,768 74,720 74,704 16 0 + 10 96,776 72,712 72,704 8 0 ================================================= ./valgrind-new/massif/tests/overloaded-new.post.diff-mips32 ================================================= --- overloaded-new.post.exp-mips32 2015-11-21 02:50:53.602473586 +0000 +++ overloaded-new.post.out 2015-11-21 03:01:54.851846102 +0000 @@ -6,58 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: operator new(unsigned int) (overloaded-new.cpp:19) -| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49) -| -->33.24% (4,000B) 0x........: operator new(unsigned int, std::nothrow_t const&) (overloaded-new.cpp:24) -| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50) -| -->16.62% (2,000B) 0x........: operator new[](unsigned int) (overloaded-new.cpp:29) -| ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51) -| -->16.62% (2,000B) 0x........: operator new[](unsigned int, std::nothrow_t const&) (overloaded-new.cpp:34) - ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52) - + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:49) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:50) +| +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:51) +| +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:52) + -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- ================================================= ./valgrind-new/memcheck/tests/leak_cpp_interior.stderr.diff ================================================= --- leak_cpp_interior.stderr.exp 2015-11-21 02:50:52.904486942 +0000 +++ leak_cpp_interior.stderr.out 2015-11-21 02:59:17.656828538 +0000 @@ -1,118 +1,118 @@ valgrind output will go to log VALGRIND_DO_LEAK_CHECK -4 bytes in 1 blocks are definitely lost in loss record ... of ... +8 bytes in 1 blocks are definitely lost in loss record ... of ... by 0x........: doit() (leak_cpp_interior.cpp:115) by 0x........: main (leak_cpp_interior.cpp:130) LEAK SUMMARY: - definitely lost: 4 bytes in 1 blocks + definitely lost: 8 bytes in 1 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks - still reachable: 163 bytes in 8 blocks + still reachable: 72,943 bytes in 9 blocks of which reachable via heuristic: - stdstring : 56 bytes in 2 blocks + stdstring : 80 bytes in 2 blocks length64 : 31 bytes in 1 blocks - newarray : 28 bytes in 1 blocks - multipleinheritance: 24 bytes in 2 blocks + newarray : 32 bytes in 1 blocks + multipleinheritance: 48 bytes in 2 blocks suppressed: 0 bytes in 0 blocks Reachable blocks (those to which a pointer was found) are not shown. To see them, rerun with: --leak-check=full --show-leak-kinds=all leak_check summary heuristics multipleinheritance LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 115 (+115) bytes in 4 (+4) blocks - still reachable: 48 (-115) bytes in 4 (-4) blocks + possibly lost: 143 (+143) bytes in 4 (+4) blocks + still reachable: 72,800 (-143) bytes in 5 (-4) blocks of which reachable via heuristic: - stdstring : 0 (-56) bytes in 0 (-2) blocks + stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks - newarray : 0 (-28) bytes in 0 (-1) blocks - multipleinheritance: 24 (+0) bytes in 2 (+0) blocks + newarray : 0 (-32) bytes in 0 (-1) blocks + multipleinheritance: 48 (+0) bytes in 2 (+0) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary any heuristics newarray LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 111 (-4) bytes in 5 (+1) blocks - still reachable: 52 (+4) bytes in 3 (-1) blocks + possibly lost: 128 (-15) bytes in 4 (+0) blocks + still reachable: 72,815 (+15) bytes in 5 (+0) blocks of which reachable via heuristic: - newarray : 28 (+28) bytes in 1 (+1) blocks - multipleinheritance: 0 (-24) bytes in 0 (-2) blocks + newarray : 63 (+63) bytes in 2 (+2) blocks + multipleinheritance: 0 (-48) bytes in 0 (-2) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics length64 LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 108 (-3) bytes in 5 (+0) blocks - still reachable: 55 (+3) bytes in 3 (+0) blocks + possibly lost: 160 (+32) bytes in 5 (+1) blocks + still reachable: 72,783 (-32) bytes in 4 (-1) blocks of which reachable via heuristic: length64 : 31 (+31) bytes in 1 (+1) blocks - newarray : 0 (-28) bytes in 0 (-1) blocks + newarray : 0 (-63) bytes in 0 (-2) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics stdstring LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 83 (-25) bytes in 4 (-1) blocks - still reachable: 80 (+25) bytes in 4 (+1) blocks + possibly lost: 111 (-49) bytes in 4 (-1) blocks + still reachable: 72,832 (+49) bytes in 5 (+1) blocks of which reachable via heuristic: - stdstring : 56 (+56) bytes in 2 (+2) blocks + stdstring : 80 (+80) bytes in 2 (+2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics multipleinheritance,newarray,stdstring,length64 ================================================= ./valgrind-new/memcheck/tests/leak_cpp_interior.stderr.diff-64bit ================================================= --- leak_cpp_interior.stderr.exp-64bit 2015-11-21 02:50:52.831488339 +0000 +++ leak_cpp_interior.stderr.out 2015-11-21 02:59:17.656828538 +0000 @@ -9,7 +9,7 @@ definitely lost: 8 bytes in 1 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks - still reachable: 239 bytes in 8 blocks + still reachable: 72,943 bytes in 9 blocks of which reachable via heuristic: stdstring : 80 bytes in 2 blocks length64 : 31 bytes in 1 blocks @@ -24,7 +24,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 143 (+143) bytes in 4 (+4) blocks - still reachable: 96 (-143) bytes in 4 (-4) blocks + still reachable: 72,800 (-143) bytes in 5 (-4) blocks of which reachable via heuristic: stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -38,7 +38,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 128 (-15) bytes in 4 (+0) blocks - still reachable: 111 (+15) bytes in 4 (+0) blocks + still reachable: 72,815 (+15) bytes in 5 (+0) blocks of which reachable via heuristic: newarray : 63 (+63) bytes in 2 (+2) blocks multipleinheritance: 0 (-48) bytes in 0 (-2) blocks @@ -50,7 +50,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 160 (+32) bytes in 5 (+1) blocks - still reachable: 79 (-32) bytes in 3 (-1) blocks + still reachable: 72,783 (-32) bytes in 4 (-1) blocks of which reachable via heuristic: length64 : 31 (+31) bytes in 1 (+1) blocks newarray : 0 (-63) bytes in 0 (-2) blocks @@ -62,7 +62,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 111 (-49) bytes in 4 (-1) blocks - still reachable: 128 (+49) bytes in 4 (+1) blocks + still reachable: 72,832 (+49) bytes in 5 (+1) blocks of which reachable via heuristic: stdstring : 80 (+80) bytes in 2 (+2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -74,7 +74,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 0 (-111) bytes in 0 (-4) blocks - still reachable: 239 (+111) bytes in 8 (+4) blocks + still reachable: 72,943 (+111) bytes in 9 (+4) blocks of which reachable via heuristic: stdstring : 80 (+0) bytes in 2 (+0) blocks length64 : 31 (+31) bytes in 1 (+1) blocks @@ -88,7 +88,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 0 (+0) bytes in 0 (+0) blocks - still reachable: 239 (+0) bytes in 8 (+0) blocks + still reachable: 72,943 (+0) bytes in 9 (+0) blocks of which reachable via heuristic: stdstring : 80 (+0) bytes in 2 (+0) blocks length64 : 31 (+0) bytes in 1 (+0) blocks @@ -102,7 +102,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 191 (+191) bytes in 6 (+6) blocks - still reachable: 48 (-191) bytes in 2 (-6) blocks + still reachable: 72,752 (-191) bytes in 3 (-6) blocks of which reachable via heuristic: stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -133,10 +133,16 @@ Finished! HEAP SUMMARY: - in use at exit: 0 bytes in 0 blocks - total heap usage: 9 allocs, 9 frees, 247 bytes allocated + in use at exit: 72,704 bytes in 1 blocks + total heap usage: 10 allocs, 9 frees, 72,951 bytes allocated -All heap blocks were freed -- no leaks are possible +LEAK SUMMARY: + definitely lost: 0 bytes in 0 blocks + indirectly lost: 0 bytes in 0 blocks + possibly lost: 0 bytes in 0 blocks + still reachable: 72,704 bytes in 1 blocks + suppressed: 0 bytes in 0 blocks +Rerun with --leak-check=full to see details of leaked memory For counts of detected and suppressed errors, rerun with: -v ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) ================================================= ./valgrind-new/none/tests/fdleak_ipv4.stderr.diff ================================================= --- fdleak_ipv4.stderr.exp 2015-11-21 02:50:56.258422765 +0000 +++ fdleak_ipv4.stderr.out 2015-11-21 03:03:04.523532145 +0000 @@ -17,11 +17,9 @@ +connect: Connection refused -FILE DESCRIPTORS: 4 open at exit. -Open AF_INET socket 3: 127.0.0.1:... <-> 127.0.0.1:... - ... - +FILE DESCRIPTORS: 3 open at exit. Open file descriptor ...: ... ================================================= ./valgrind-new/none/tests/fdleak_ipv4.stdout.diff ================================================= --- fdleak_ipv4.stdout.exp 2015-11-21 02:50:57.217404415 +0000 +++ fdleak_ipv4.stdout.out 2015-11-21 03:02:54.331724355 +0000 @@ -1 +0,0 @@ -hello ================================================= ./valgrind-old/drd/tests/std_thread2.stderr.diff ================================================= --- std_thread2.stderr.exp 2015-11-21 02:31:40.902592929 +0000 +++ std_thread2.stderr.out 2015-11-21 02:49:35.834961663 +0000 @@ -1,4 +1,19 @@ +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl >::~_Impl() (thread:...) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-old/drd/tests/std_thread2) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) +Address 0x........ is at offset 32 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + Thread 2: Conflicting store by thread 2 at 0x........ size 4 at 0x........: main::{lambda()#1}::operator()() const (std_thread2.cpp:21) @@ -6,4 +21,4 @@ Done. -ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) +ERROR SUMMARY: 4 errors from 4 contexts (suppressed: 0 from 0) ================================================= ./valgrind-old/drd/tests/std_thread.stderr.diff ================================================= --- std_thread.stderr.exp 2015-11-21 02:31:40.929592407 +0000 +++ std_thread.stderr.out 2015-11-21 02:49:34.268991627 +0000 @@ -1,4 +1,84 @@ +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + +Conflicting store by thread 1 at 0x........ size 8 + at 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-old/drd/tests/std_thread) + by 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) +Address 0x........ is at offset 16 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + +Conflicting load by thread 1 at 0x........ size 8 + at 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) + by 0x........: std::shared_ptr::~shared_ptr() (shared_ptr.h:?) + by 0x........: std::thread::_Impl_base::~_Impl_base() (in /tmp/vgtest-22304/2015-11-21/valgrind-old/drd/tests/std_thread) + by 0x........: std::thread::_Impl >::~_Impl() (thread:...) + by 0x........: void __gnu_cxx::new_allocator > >::destroy >(std::_Bind_simple*) (new_allocator.h:?) + by 0x........: std::enable_if > >::__destroy_helper >::type>::value, void>::type std::allocator_traits > > >::_S_destroy >(std::thread::_Impl >&, std::allocator > >::__destroy_helper*) (alloc_traits.h:?) + by 0x........: void std::allocator_traits > > >::destroy >(std::thread::_Impl >&, std::_Bind_simple*) (alloc_traits.h:?) + by 0x........: std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>::_M_dispose() (shared_ptr_base.h:?) + by 0x........: std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() (shared_ptr_base.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr::~__shared_ptr() (shared_ptr_base.h:?) +Address 0x........ is at offset 32 from 0x......... Allocation context: + at 0x........: ...operator new... (vg_replace_malloc.c:...) + by 0x........: __gnu_cxx::new_allocator >, std::allocator >, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:?) + by 0x........: std::allocator_traits >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::_Sp_counted_ptr_inplace >, std::allocator >, (__gnu_cxx::_Lock_policy)2>&, unsigned long) (alloc_traits.h:?) + by 0x........: std::__allocated_ptr >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded >, std::allocator >, (__gnu_cxx::_Lock_policy)2> > >(std::__allocated_ptr&) (allocated_ptr.h:?) + by 0x........: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count >, std::allocator >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::thread::_Impl >*, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::__shared_ptr >, (__gnu_cxx::_Lock_policy)2>::__shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr_base.h:?) + by 0x........: std::shared_ptr > >::shared_ptr >, main::{lambda()#1} ()>(std::_Sp_make_shared_tag, std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::allocate_shared >, std::allocator >, main::{lambda()#1} ()>(std::allocator > const&, main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::make_shared >, main::{lambda()#1} ()>(main::{lambda()#1} (&&)()) (shared_ptr.h:?) + by 0x........: std::shared_ptr > > std::thread::_M_make_routine >(std::thread::_Impl&&) (thread:...) + by 0x........: std::thread::thread(main::{lambda()#1}&&) (thread:...) + by 0x........: main (std_thread.cpp:?) + Done. -ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) +ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 0 from 0) ================================================= ./valgrind-old/exp-sgcheck/tests/preen_invars.stderr.diff-glibc28-amd64 ================================================= --- preen_invars.stderr.exp-glibc28-amd64 2015-11-21 02:31:36.990668639 +0000 +++ preen_invars.stderr.out 2015-11-21 02:50:40.351727138 +0000 @@ -6,4 +6,46 @@ Actual: global array "im_a_global_arr" of size 10 in object with soname "preen_invars_so" -ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0) +exp-sgcheck: sg_main.c:559 (add_blocks_to_StackTree): Assertion '!already_present' failed. + +host stacktrace: + at 0x........: show_sched_status_wrk (m_libcassert.c:343) + by 0x........: report_and_quit (m_libcassert.c:415) + by 0x........: vgPlain_assert_fail (m_libcassert.c:481) + by 0x........: add_blocks_to_StackTree (sg_main.c:559) + by 0x........: shadowStack_new_frame.isra.22 (sg_main.c:1883) + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? + by 0x........: _dl_sort_fini (dl-fini.c:41) + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? + by 0x........: ??? (in /tmp/vgdb-pipe-shared-mem-vgdb-8058-by-???-on-mock) + by 0x........: ??? + +sched status: + running_tid=1 + +Thread 1: status = VgTs_Runnable (lwpid 8058) + at 0x........: _dl_sort_fini (dl-fini.c:121) + by 0x........: _dl_close_worker.part.0 (dl-close.c:233) + by 0x........: _dl_close (dl-close.c:125) + by 0x........: _dl_catch_error (dl-error.c:187) + by 0x........: _dlerror_run (dlerror.c:163) + by 0x........: dlclose (dlclose.c:46) + by 0x........: main (preen_invars.c:48) + + +Note: see also the FAQ in the source distribution. +It contains workarounds to several common problems. +In particular, if Valgrind aborted or crashed after +identifying problems in your program, there's a good chance +that fixing those problems will prevent Valgrind aborting or +crashing, especially if it happened in m_mallocfree.c. + +If that doesn't help, please report this bug to: www.valgrind.org + +In the bug report, send all the above text, the valgrind +version, and what OS and version you are using. Thanks. + ================================================= ./valgrind-old/exp-sgcheck/tests/preen_invars.stdout.diff ================================================= --- preen_invars.stdout.exp 2015-11-21 02:31:36.988668677 +0000 +++ preen_invars.stdout.out 2015-11-21 02:50:37.670778438 +0000 @@ -1 +0,0 @@ -foo bar 1 ================================================= ./valgrind-old/gdbserver_tests/hgtls.stdoutB.diff ================================================= --- hgtls.stdoutB.exp 2015-11-21 02:31:35.823691224 +0000 +++ hgtls.stdoutB.out 2015-11-21 02:37:30.711847552 +0000 @@ -26,10 +26,10 @@ test static_extern tls_ip 0x........ ip 0x........ equal 1 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; -test so_extern tls_ip 0x........ ip 0x........ equal 1 +test so_extern tls_ip 0x........ ip 0x........ equal 0 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; -test so_extern tls_ip 0x........ ip 0x........ equal 1 +test so_extern tls_ip 0x........ ip 0x........ equal 0 Breakpoint 1, tls_ptr (p=0x........) at tls.c:55 55 int here = 0; test so_local tls_ip 0x........ ip 0x........ equal 1 ================================================= ./valgrind-old/massif/tests/new-cpp.post.diff ================================================= --- new-cpp.post.exp 2015-11-21 02:31:36.868671000 +0000 +++ new-cpp.post.out 2015-11-21 02:42:01.512657316 +0000 @@ -6,54 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: main (new-cpp.cpp:19) + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (new-cpp.cpp:19) | -->33.24% (4,000B) 0x........: main (new-cpp.cpp:20) +->04.72% (4,000B) 0x........: main (new-cpp.cpp:20) | -->16.62% (2,000B) 0x........: main (new-cpp.cpp:21) +->02.36% (2,000B) 0x........: main (new-cpp.cpp:21) | -->16.62% (2,000B) 0x........: main (new-cpp.cpp:22) +->02.36% (2,000B) 0x........: main (new-cpp.cpp:22) -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- - 6 16,040 8,024 8,000 24 0 - 7 20,048 4,016 4,000 16 0 - 8 22,056 2,008 2,000 8 0 - 9 24,064 0 0 0 0 + 7 88,752 80,736 80,704 32 0 + 8 92,760 76,728 76,704 24 0 + 9 94,768 74,720 74,704 16 0 + 10 96,776 72,712 72,704 8 0 ================================================= ./valgrind-old/massif/tests/overloaded-new.post.diff ================================================= --- overloaded-new.post.exp 2015-11-21 02:31:36.860671155 +0000 +++ overloaded-new.post.out 2015-11-21 02:42:02.494638495 +0000 @@ -6,54 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49) + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:49) | -->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50) +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:50) | -->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51) +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:51) | -->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52) +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:52) -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- - 6 16,040 8,024 8,000 24 0 - 7 20,048 4,016 4,000 16 0 - 8 22,056 2,008 2,000 8 0 - 9 24,064 0 0 0 0 + 7 88,752 80,736 80,704 32 0 + 8 92,760 76,728 76,704 24 0 + 9 94,768 74,720 74,704 16 0 + 10 96,776 72,712 72,704 8 0 ================================================= ./valgrind-old/massif/tests/overloaded-new.post.diff-mips32 ================================================= --- overloaded-new.post.exp-mips32 2015-11-21 02:31:36.869670980 +0000 +++ overloaded-new.post.out 2015-11-21 02:42:02.494638495 +0000 @@ -6,58 +6,60 @@ KB -11.75^ ########### - | # - | # - | # - | :::::::# - | : # - | : # - | ::::::: # :::::::::::: - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | : : # : - | ::::::::::::: : # : :::::: - | : : : # : : - | : : : # : : - | : : : # : : :::::: - | : : : # : : : - | : : : # : : : +82.76^ ### + | :::# ::: + | ::::: # : : + | :::: :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: + | : : :: # : ::: 0 +----------------------------------------------------------------------->KB - 0 23.50 + 0 94.51 -Number of snapshots: 10 - Detailed snapshots: [5 (peak)] +Number of snapshots: 11 + Detailed snapshots: [6 (peak)] -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- 0 0 0 0 0 0 - 1 4,008 4,008 4,000 8 0 - 2 8,016 8,016 8,000 16 0 - 3 10,024 10,024 10,000 24 0 - 4 12,032 12,032 12,000 32 0 - 5 12,032 12,032 12,000 32 0 -99.73% (12,000B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. -->33.24% (4,000B) 0x........: operator new(unsigned int) (overloaded-new.cpp:19) -| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:49) -| -->33.24% (4,000B) 0x........: operator new(unsigned int, std::nothrow_t const&) (overloaded-new.cpp:24) -| ->33.24% (4,000B) 0x........: main (overloaded-new.cpp:50) -| -->16.62% (2,000B) 0x........: operator new[](unsigned int) (overloaded-new.cpp:29) -| ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:51) -| -->16.62% (2,000B) 0x........: operator new[](unsigned int, std::nothrow_t const&) (overloaded-new.cpp:34) - ->16.62% (2,000B) 0x........: main (overloaded-new.cpp:52) - + 1 72,712 72,712 72,704 8 0 + 2 76,720 76,720 76,704 16 0 + 3 80,728 80,728 80,704 24 0 + 4 82,736 82,736 82,704 32 0 + 5 84,744 84,744 84,704 40 0 + 6 84,744 84,744 84,704 40 0 +99.95% (84,704B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc. +->85.79% (72,704B) 0x........: ??? (in /usr/lib64/libstdc++.so.6.0.21) +| ->85.79% (72,704B) 0x........: call_init.part.0 (dl-init.c:72) +| ->85.79% (72,704B) 0x........: _dl_init (dl-init.c:30) +| ->85.79% (72,704B) 0x........: ??? (in /usr/lib64/ld-2.21.so) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:49) +| +->04.72% (4,000B) 0x........: main (overloaded-new.cpp:50) +| +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:51) +| +->02.36% (2,000B) 0x........: main (overloaded-new.cpp:52) + -------------------------------------------------------------------------------- n time(B) total(B) useful-heap(B) extra-heap(B) stacks(B) -------------------------------------------------------------------------------- ================================================= ./valgrind-old/memcheck/tests/leak_cpp_interior.stderr.diff ================================================= --- leak_cpp_interior.stderr.exp 2015-11-21 02:31:36.278682418 +0000 +++ leak_cpp_interior.stderr.out 2015-11-21 02:39:22.492705132 +0000 @@ -1,118 +1,118 @@ valgrind output will go to log VALGRIND_DO_LEAK_CHECK -4 bytes in 1 blocks are definitely lost in loss record ... of ... +8 bytes in 1 blocks are definitely lost in loss record ... of ... by 0x........: doit() (leak_cpp_interior.cpp:115) by 0x........: main (leak_cpp_interior.cpp:130) LEAK SUMMARY: - definitely lost: 4 bytes in 1 blocks + definitely lost: 8 bytes in 1 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks - still reachable: 163 bytes in 8 blocks + still reachable: 72,943 bytes in 9 blocks of which reachable via heuristic: - stdstring : 56 bytes in 2 blocks + stdstring : 80 bytes in 2 blocks length64 : 31 bytes in 1 blocks - newarray : 28 bytes in 1 blocks - multipleinheritance: 24 bytes in 2 blocks + newarray : 32 bytes in 1 blocks + multipleinheritance: 48 bytes in 2 blocks suppressed: 0 bytes in 0 blocks Reachable blocks (those to which a pointer was found) are not shown. To see them, rerun with: --leak-check=full --show-leak-kinds=all leak_check summary heuristics multipleinheritance LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 115 (+115) bytes in 4 (+4) blocks - still reachable: 48 (-115) bytes in 4 (-4) blocks + possibly lost: 143 (+143) bytes in 4 (+4) blocks + still reachable: 72,800 (-143) bytes in 5 (-4) blocks of which reachable via heuristic: - stdstring : 0 (-56) bytes in 0 (-2) blocks + stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks - newarray : 0 (-28) bytes in 0 (-1) blocks - multipleinheritance: 24 (+0) bytes in 2 (+0) blocks + newarray : 0 (-32) bytes in 0 (-1) blocks + multipleinheritance: 48 (+0) bytes in 2 (+0) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary any heuristics newarray LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 111 (-4) bytes in 5 (+1) blocks - still reachable: 52 (+4) bytes in 3 (-1) blocks + possibly lost: 128 (-15) bytes in 4 (+0) blocks + still reachable: 72,815 (+15) bytes in 5 (+0) blocks of which reachable via heuristic: - newarray : 28 (+28) bytes in 1 (+1) blocks - multipleinheritance: 0 (-24) bytes in 0 (-2) blocks + newarray : 63 (+63) bytes in 2 (+2) blocks + multipleinheritance: 0 (-48) bytes in 0 (-2) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics length64 LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 108 (-3) bytes in 5 (+0) blocks - still reachable: 55 (+3) bytes in 3 (+0) blocks + possibly lost: 160 (+32) bytes in 5 (+1) blocks + still reachable: 72,783 (-32) bytes in 4 (-1) blocks of which reachable via heuristic: length64 : 31 (+31) bytes in 1 (+1) blocks - newarray : 0 (-28) bytes in 0 (-1) blocks + newarray : 0 (-63) bytes in 0 (-2) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics stdstring LEAK SUMMARY: - definitely lost: 4 (+0) bytes in 1 (+0) blocks + definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks - possibly lost: 83 (-25) bytes in 4 (-1) blocks - still reachable: 80 (+25) bytes in 4 (+1) blocks + possibly lost: 111 (-49) bytes in 4 (-1) blocks + still reachable: 72,832 (+49) bytes in 5 (+1) blocks of which reachable via heuristic: - stdstring : 56 (+56) bytes in 2 (+2) blocks + stdstring : 80 (+80) bytes in 2 (+2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks suppressed: 0 (+0) bytes in 0 (+0) blocks To see details of leaked memory, give 'full' arg to leak_check leak_check summary heuristics multipleinheritance,newarray,stdstring,length64 ================================================= ./valgrind-old/memcheck/tests/leak_cpp_interior.stderr.diff-64bit ================================================= --- leak_cpp_interior.stderr.exp-64bit 2015-11-21 02:31:36.154684818 +0000 +++ leak_cpp_interior.stderr.out 2015-11-21 02:39:22.492705132 +0000 @@ -9,7 +9,7 @@ definitely lost: 8 bytes in 1 blocks indirectly lost: 0 bytes in 0 blocks possibly lost: 0 bytes in 0 blocks - still reachable: 239 bytes in 8 blocks + still reachable: 72,943 bytes in 9 blocks of which reachable via heuristic: stdstring : 80 bytes in 2 blocks length64 : 31 bytes in 1 blocks @@ -24,7 +24,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 143 (+143) bytes in 4 (+4) blocks - still reachable: 96 (-143) bytes in 4 (-4) blocks + still reachable: 72,800 (-143) bytes in 5 (-4) blocks of which reachable via heuristic: stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -38,7 +38,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 128 (-15) bytes in 4 (+0) blocks - still reachable: 111 (+15) bytes in 4 (+0) blocks + still reachable: 72,815 (+15) bytes in 5 (+0) blocks of which reachable via heuristic: newarray : 63 (+63) bytes in 2 (+2) blocks multipleinheritance: 0 (-48) bytes in 0 (-2) blocks @@ -50,7 +50,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 160 (+32) bytes in 5 (+1) blocks - still reachable: 79 (-32) bytes in 3 (-1) blocks + still reachable: 72,783 (-32) bytes in 4 (-1) blocks of which reachable via heuristic: length64 : 31 (+31) bytes in 1 (+1) blocks newarray : 0 (-63) bytes in 0 (-2) blocks @@ -62,7 +62,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 111 (-49) bytes in 4 (-1) blocks - still reachable: 128 (+49) bytes in 4 (+1) blocks + still reachable: 72,832 (+49) bytes in 5 (+1) blocks of which reachable via heuristic: stdstring : 80 (+80) bytes in 2 (+2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -74,7 +74,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 0 (-111) bytes in 0 (-4) blocks - still reachable: 239 (+111) bytes in 8 (+4) blocks + still reachable: 72,943 (+111) bytes in 9 (+4) blocks of which reachable via heuristic: stdstring : 80 (+0) bytes in 2 (+0) blocks length64 : 31 (+31) bytes in 1 (+1) blocks @@ -88,7 +88,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 0 (+0) bytes in 0 (+0) blocks - still reachable: 239 (+0) bytes in 8 (+0) blocks + still reachable: 72,943 (+0) bytes in 9 (+0) blocks of which reachable via heuristic: stdstring : 80 (+0) bytes in 2 (+0) blocks length64 : 31 (+0) bytes in 1 (+0) blocks @@ -102,7 +102,7 @@ definitely lost: 8 (+0) bytes in 1 (+0) blocks indirectly lost: 0 (+0) bytes in 0 (+0) blocks possibly lost: 191 (+191) bytes in 6 (+6) blocks - still reachable: 48 (-191) bytes in 2 (-6) blocks + still reachable: 72,752 (-191) bytes in 3 (-6) blocks of which reachable via heuristic: stdstring : 0 (-80) bytes in 0 (-2) blocks length64 : 0 (-31) bytes in 0 (-1) blocks @@ -133,10 +133,16 @@ Finished! HEAP SUMMARY: - in use at exit: 0 bytes in 0 blocks - total heap usage: 9 allocs, 9 frees, 247 bytes allocated + in use at exit: 72,704 bytes in 1 blocks + total heap usage: 10 allocs, 9 frees, 72,951 bytes allocated -All heap blocks were freed -- no leaks are possible +LEAK SUMMARY: + definitely lost: 0 bytes in 0 blocks + indirectly lost: 0 bytes in 0 blocks + possibly lost: 0 bytes in 0 blocks + still reachable: 72,704 bytes in 1 blocks + suppressed: 0 bytes in 0 blocks +Rerun with --leak-check=full to see details of leaked memory For counts of detected and suppressed errors, rerun with: -v ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)