KGDB stack traces in the kernel.

From: Julian Elischer <julian_at_freebsd.org>
Date: Mon, 04 Apr 2011 15:57:41 -0700
currently in kernel stack traces I see:

[Switching to Thread 100246]
0xffffffff814617f3 in fio_local_to_global_packet () from 
xxxxxxxxx/mumble.ko
(kgdb) bt
#0  0xffffffff814617f3 in yyyy () from xxxxxxxxx/mumble.ko
#1  0xffffffff8146171f in zzzz () from xxxxxxxxx/mumble.ko
[...]
#14 0xffffffff805c4b8e in fork_exit (callout=0xffffffff814dfe30 
<mumble_kthread_wrapper>, arg=0x7d8b48000421dbe8, 
frame=0x814fc340c6c74800) at ../../../kern/kern_fork.c:859
#15 0xf045c748e87d8948 in ?? ()
#16 0xb5058b4800000000 in ?? ()
#17 0x000130054800074e in ?? ()
#18 0x950fc0850c408b00 in ?? ()
and then the stack trace goes on forever with garbage.
#19 0x74c08548c0b60fc0 in ?? ()
#20 0x814fdb70c6c74816 in ?? ()
#21 0x0000b800000007bf in ?? ()
#22 0x48000425b9e80000 in ?? ()
#23 0x1210c78148e87d8b in ?? ()
#24 0x4800000bd1ba0000 in ?? ()
#25 0x3de8814fc340c6c7 in ?? ()
#26 0x558b4828eb000421 in ?? ()
#27 0xc68148e8758b48f0 in ?? ()
#28 0xe87d8b4800001210 in ?? ()
#29 0xe800001178c78148 in ?? ()
#30 0x83fc458900041bdc in ?? ()
#31 0x7d8b480d7400fc7d in ?? ()
#32 0xc085fffffdfae8e8 in ?? ()
#33 0x8148e87d8b48cb74 in ?? ()
#34 0x0bdcba00001210c7 in ?? ()
#35 0x4fc340c6c7480000 in ?? ()
#36 0x8b48000420aae881 in ?? ()
#37 0x000007600548e845 in ?? ()
#38 0x00000019bfc68948 in ?? ()

etc

is there anyone here with enough gdb/kgdb source experience to know what
we would need to put on the stack at fork_exit() to make it stop when it
gets there?

not only is it annoying but it slows down debugging because kgdb and 
the ddd
front end ask for stacks a LOT. sometimes it actually just hangs as 
the stack
goes into a loop and never ends.

I had a quick look but didn't spot how gdb decides it has reached the 
end of a stack.

Julian
Received on Mon Apr 04 2011 - 21:31:55 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:13 UTC