参考:
http://code.google.com/p/gperftools/issues/detail?id=423
http://code.google.com/p/gperftools/issues/detail?id=428
估计到时会再升个版本么?
./heap-checker_debug_unittest.sh
然后再用gdb attach来断下来:
#0 0xb7737424 in __kernel_vsyscall ()
#1 0xb76ae1d0 in __nanosleep_nocancel () at ../sysdeps/unix/syscall-template.S:82
#2 0xb7708400 in base::internal::SpinLockDelay (w=0xb771abe4, value=2, loop=10137) at ./src/base/spinlock_linux-inl.h:89
#3 0xb7708208 in SpinLock::SlowLock (this=0xb771abe4) at src/base/spinlock.cc:132
#4 0xb76ec2c8 in Lock (this=0xb771abe4) at src/base/spinlock.h:75
#5 SpinLockHolder (l=0xb771abe4, this=0xbfb2053c) at src/base/spinlock.h:141
#6 NewHook (ptr=0x8f44000, size=256) at src/heap-checker.cc:577
#7 0xb76fc75e in MallocHook::InvokeNewHookSlow (p=0x8f44000, s=256) at src/malloc_hook.cc:525
#8 0xb76e853d in MallocHook::InvokeNewHook (p=0x8f44000, s=256) at src/malloc_hook-inl.h:161
#9 0xb7708d15 in tc_realloc (old_ptr=0x0, new_size=256) at src/tcmalloc.cc:1518
#10 0xb744830e in _IO_vfscanf_internal (s=0xbfb20880, format=0xb770ec08 "%llx-%llx %4s %llx %x:%x %lld %n",
argptr=0xbfb20958 "\330\n\262\277\340\n\262\277(\037\262\277\350\n\262\277\324\t\262\277\330\t\262\277\360\n\262\277\334\t\262\277(is\267\001", errp=0x0) at vfscanf.c:1413
#11 0xb745d27d in _IO_vsscanf (
string=0xbfb20b0c "08048000-08054000 r-xp 00000000 08:01 272838 /opt/proj/3rdparty/gperftools-2.0/.libs/lt-heap-checker_unittest",
format=0xb770ec08 "%llx-%llx %4s %llx %x:%x %lld %n",
args=0xbfb20958 "\330\n\262\277\340\n\262\277(\037\262\277\350\n\262\277\324\t\262\277\330\t\262\277\360\n\262\277\334\t\262\277(is\267\001") at iovsscanf.c:45
#12 0xb744a41b in __sscanf (
s=0xbfb20b0c "08048000-08054000 r-xp 00000000 08:01 272838 /opt/proj/3rdparty/gperftools-2.0/.libs/lt-heap-checker_unittest",
format=0xb770ec08 "%llx-%llx %4s %llx %x:%x %lld %n") at sscanf.c:34
#13 0xb7706214 in ProcMapsIterator::NextExt (this=0xbfb21f0c, start=0xbfb20ad8, end=0xbfb20ae0, flags=0xbfb20afc, offset=0xbfb20ae8,
inode=0xbfb20af0, filename=0xbfb20b00, file_mapping=0x0, file_pages=0x0, anon_mapping=0x0, anon_pages=0x0, dev=0x0)
at src/base/sysinfo.cc:721
#14 0xb7706533 in ProcMapsIterator::Next (this=0xbfb21f0c, start=0xbfb20ad8, end=0xbfb20ae0, flags=0xbfb20afc, offset=0xbfb20ae8,
inode=0xbfb20af0, filename=0xbfb20b00) at src/base/sysinfo.cc:661
#15 0xb76eefd1 in HeapLeakChecker::UseProcMapsLocked (proc_maps_task=HeapLeakChecker::DISABLE_LIBRARY_ALLOCS) at src/heap-checker.cc:909
#16 0xb76ef752 in HeapLeakChecker_InternalInitStart () at src/heap-checker.cc:2039
#17 0xb76e4c6c in google_init_module_init_start () at src/heap-checker.cc:2129
#18 GoogleInitializer (dtor=0, ctor=<optimized out>, name=0xb770aae3 "init_start", this=0xb771ac0c) at src/base/googleinit.h:45
---Type <return> to continue, or q <return> to quit---
#19 __static_initialization_and_destruction_0 (__initialize_p=<optimized out>, __priority=<optimized out>) at src/heap-checker.cc:2129
#20 _GLOBAL__sub_I_heap_checker.cc(void) () at src/heap-checker.cc:2379
#21 0xb7746e9b in call_init (env=0xbfb221cc, argv=0xbfb221c4, argc=1, l=<optimized out>) at dl-init.c:85
#22 call_init (l=<optimized out>, argc=1, argv=0xbfb221c4, env=0xbfb221cc) at dl-init.c:35
#23 0xb7746f84 in _dl_init (main_map=<optimized out>, argc=1, argv=0xbfb221c4, env=0xbfb221cc) at dl-init.c:134
#24 0xb773920f in _dl_start_user () from /lib/ld-linux.so.2