Studying a panic
The following list outlines the process
for determining which kernel component
caused a system panic.
For detailed information about interpreting
``Using the crash(ADM) diagnostic tool''.
PANICBOOT=NO must be set
in the /etc/default/boot file for this to work.
When the system panics,
write down the type of panic (see the
the EIP number, and the size of the dump in pages
from the console display.
When the machine reboots,
save the kernel dump that is on the dump device
as shown in
``Recovering from a system panic''.
Put the machine in single-user mode.
on the image.
Use the panic command in crash
to find the routine in which the panic happened.
Be sure to verify that
the trap type and EIP
match those copied from the console screen after the panic.
Note the name (symbol name)
of the routine that was executing
when the system panicked.
This is the function listed first under the
Kernel Stack before Trap line.
Quit the crash command.
to determine the driver in which that routine is located.
You can run a script such as the following,
which uses strings.
for FILE in `find /etc/conf/pack.d -name '*.[oa]' -print`
strings $FILE | grep $1 && echo $FILE
If this script were installed as findpanic,
you would run it with one argument
that gives the name of the kernel routine:
This script will output something like:
This indicates that the foo driver
may have been responsible for the system panic.
Additional help from Technical Support
Examining a memory dump with crash(ADM)
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003