From: Maxim Y. <max...@gm...> - 2006-10-22 14:25:01
|
Hi, I'm trying to profile my application using callgrind without any luck. Could you guys give me a hint why I fail to get a profile? I'm using Linux Fedora Core 5 [max@k-pax demux]$ cat /proc/version Linux version 2.6.17-1.2187_FC5 (bre...@hs...) (gcc version 4.1.1 20060525 (Red Hat 4.1.1-1)) #1 Mon Sep 11 01:17:06 EDT 2006 My program uses signals heavily (sends itself). [max@k-pax demux]$ valgrind -v --tool=callgrind bin/test > log ==3038== Callgrind, a call-graph generating cache profiler. ==3038== Copyright (C) 2002-2006, and GNU GPL'd, by Josef Weidendorfer et al. ==3038== Using LibVEX rev 1658, a library for dynamic binary translation. ==3038== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP. ==3038== Using valgrind-3.2.1, a dynamic binary instrumentation framework. ==3038== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al. ==3038== --3038-- Command line --3038-- bin/test --3038-- Startup, with flags: --3038-- -v --3038-- --tool=callgrind --3038-- Contents of /proc/version: --3038-- Linux version 2.6.17-1.2187_FC5 (bre...@hs...) (gcc version 4.1.1 20060525 (Red Hat 4.1.1-1)) #1 Mon Sep 11 01:17:06 EDT 2006 --3038-- Arch and hwcaps: X86, x86-sse1-sse2 --3038-- Valgrind library directory: /usr/local/lib/valgrind ==3038== For interactive control, run 'callgrind_control -h'. --3038-- Reading syms from /lib/ld-2.4.so (0x526000) --3038-- Reading syms from /home/max/src/demux/bin/test (0x8048000) --3038-- Reading syms from /usr/local/lib/valgrind/x86-linux/callgrind (0x38000000) --3038-- object doesn't have a dynamic symbol table --3038-- Code check found runtime_resolve: ld-2.4.so +0x12B60=0x538B60, length 24 --3038-- Reading syms from /usr/local/lib/valgrind/x86-linux/vgpreload_core.so (0x4001000) --3038-- Reading syms from /lib/librt-2.4.so (0xDA4000) --3038-- Reading syms from /usr/lib/libstdc++.so.6.0.8 (0x3E7000) --3038-- object doesn't have a symbol table --3038-- Reading syms from /lib/libm-2.4.so (0xDB3000) --3038-- Reading syms from /lib/libgcc_s-4.1.1-20060525.so.1 (0x3D9000) --3038-- object doesn't have a symbol table --3038-- Reading syms from /lib/libpthread-2.4.so (0x3C3000) --3038-- Reading syms from /lib/libc-2.4.so (0x101000) --3038-- Symbol match: found runtime_resolve: ld-2.4.so +0x538B60=0x538B60 (none) BB# 343925 Callgrind: threads.c:396 (push_exec_state): Assertion '(sp > 0) && (sp < 10)' failed. ==3038== at 0x38019C11: report_and_quit (m_libcassert.c:136) ==3038== by 0x38019F3B: vgPlain_assert_fail (m_libcassert.c:200) ==3038== by 0x3801801F: vgCallgrind_pre_signal (threads.c:396) ==3038== by 0x38026549: deliver_signal (m_signals.c:938) ==3038== by 0x380267BC: async_signalhandler (m_signals.c:1495) ==3038== by 0x3802540F: (within /usr/local/lib/valgrind/x86-linux/callgrind) ==3038== by 0x38039E20: vgPlain_scheduler (scheduler.c:721) ==3038== by 0x38058D53: run_a_thread_NORETURN (syswrap-linux.c:87) sched status: running_tid=1 Thread 1: status = VgTs_Runnable ==3038== at 0x3CDD93: __write_nocancel (in /lib/libpthread-2.4.so) ==3038== by 0x3CF0C7: (within /lib/libpthread-2.4.so) ==3038== by 0x3CF0C7: (within /lib/libpthread-2.4.so) ==3038== by 0x3CF0C7: (within /lib/libpthread-2.4.so) ==3038== by 0x3CF0C7: (within /lib/libpthread-2.4.so) ==3038== by 0x3CF0C7: (within /lib/libpthread-2.4.so) ==3038== by 0x804AEA4: demux::engine_base::mask(int, __sigset_t const*, __sigset_t*) (demux.h:420) ==3038== by 0x804B4B5: demux::engine_base::mask_guard::unblock() (demux.h:303) ==3038== by 0x804BFB6: demux::epoll_::do_readiness(unsigned, demux::engine_base::mask_guard*, long long) (demux.h:642) ==3038== by 0x804C347: demux::engine_<demux::epoll_>::loop() (demux.h:574) ==3038== by 0x8049352: loop(unsigned) (test.cc:133) ==3038== by 0x804948A: main (test.cc:143) Note: see also the FAQ.txt in the source distribution. It contains workarounds to several common problems. 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 Linux distro you are using. Thanks. |