This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
gdb does not show full backtrace for deadlocked pthread program.
- From: Ben Greear <greearb at candelatech dot com>
- To: gdb at sources dot redhat dot com
- Date: Mon, 26 Sep 2005 00:24:06 -0700
- Subject: gdb does not show full backtrace for deadlocked pthread program.
Hello!
I have a program that uses pthreads and evidently has a
nifty little thread deadlock.
The interesting thing is that gdb will not show me the full
backtrace of the deadlocked threads. Both tested system's running
a slightly modified 2.6.11 kernel. The FC2 system is a dual-xeon with
SMP kernel. The FC4 machine is a laptop with UP kernel.
FC2's gdb doesn't even decode frame 3, but on FC4 I get this:
[after attaching to deadlocked process]
(gdb) thread apply all bt
Thread 2 (Thread -1208132688 (LWP 9895)):
#0 0xffffe410 in ?? ()
#1 0xb7fd50e8 in ?? ()
#2 0x00000002 in ?? ()
#3 0x004b4e7e in __lll_mutex_lock_wait () from /lib/libpthread.so.0
Thread 1 (Thread -1208026656 (LWP 9892)):
#0 0xffffe410 in ?? ()
#1 0xbffff118 in ?? ()
#2 0x00000002 in ?? ()
#3 0x004b4e7e in __lll_mutex_lock_wait () from /lib/libpthread.so.0
Frames 0 and 1 appear to be in linux-gate.so, most likely whatever
kernel call allows nptl to work??
Any idea how to get a full backtrace for these threads?
Thanks,
Ben
--
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc http://www.candelatech.com