lkml.org 
[lkml]   [1998]   [Jun]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectSMP lockups - Integrated Kernel Debugging patch - 2.1.105
Date
ftp://ftp.ocs.com.au/pub/patch-ikd-2.1.105.gz - Integrated Kernel
Debugging patch for 2.1.105. You might want to get
make_System_map.pl.gz from the same directory.

This can help track down the SMP/CDrom lockups with a second machine.
You can get a kernel trace dumped to another machine via a serial
console. It is messy to get started but worth it.

Apply ikd patch.

Configure with serial console, SysRQ and kernel trace.

make dep clean [b]zImage modules debug

Pick a spare dumb serial port on the test machine, run a null modem
to a second machine.

Update lilo.conf with
append="console=tty0 console=ttySn,115200"

On the second machine, capture everything that comes down the null
modem line. You might need to tweak the speed in lilo.conf to
something the second machine can read without data loss, there is
little or no flow control on kernel tracing. Speed is limited by the
receiving UART.

Install test kernel, reboot.

make_System_map.pl /proc/ksyms /lib/modules/`uname -r`/System.map \
/lib/modules/`uname -r`/*/*.o > /tmp/map
builds a map including modules currently loaded.

When it locks up, hit SysRQ-G and wait. This dumps the kernel log
buffer and the kernel trace buffer to all consoles, including the
serial console. You now have a trace captured on the second machine.

Reboot.

scripts/ktrace -m /tmp/map -d captured.tracefile > /tmp/lockup.trace
decodes the captured kernel trace, converts addresses to function
names and shows the path to the lockup.

Messy to set up the first time but very useful for this sort of
problem. Additional reading, Documentation/{serial.console.txt,
debugging.txt, ktrace.txt, xkdebug.txt}.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu

\
 
 \ /
  Last update: 2005-03-22 13:43    [W:0.549 / U:0.004 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site