[Home]

My System has Panic'ed - Getting the details


When a system panics information is available on the screen, in addition, the state of the system at the time of the panic is usually in /dev/swap. However, some users are not that familiar with the system to record accurately the screen information and don't want to waste time saving the panic dump.

One of the first things to do is make sure the system concerned has had all the patches and supplements applied. Some are mandatory!!

Refer to the following links:

Don't rule out hardware problems e.g.

Once you are sure it is not a known problem e.g. there is no SLS applicable, you will have to look at what the system is telling you. To do that you need the information.

This method can be used to automate the process so someone is informed of the event with as much detail as possible.

There is a program /etc/dumpsave that is run when starting up the system to prompt the user to save the dump if one is present. This process is based on the actions dumpsave takes. This assumes there is a dump in /dev/swap - this is not always the case. Refer to the TA's at the end of this article if that is the case and get the user to log the details !!!.

 -------------  Cut Here --------------
#!/bin/sh
#
# See if there is a panic dump in swap device, if so grab
# it and mail it up to support.
# Add as /etc/rc2.d/S88swap
# Move /etc/dumpsave to one side

MAILTO="tom@bdsl.com"

# Will NOT work with Virtual Disk Manager

set -f                          # don't expand a "??????" path
set -- `/etc/swap -l`
if [ "$6" ]
then
        SWAPDEV="$6" ; SWPLO="$8" ; NSWAP="$9"
else
        exit 2                  # try again later when swap added
fi

NBYTES=`/etc/memsize $SWAPDEV $SWPLO $NSWAP 2>&1`

case $? in
0)      ;;
2)      exit 0                          # no dump image in swap device
        ;;
*)      exit 1                          # Some problem
        ;;
esac

# Run crash and look for Panic, Trace and User
echo "panic
stack
trace
user
proc
quit" | /etc/crash -d $SWAPDEV  | mail -s "Panic Trace" $MAILTO


Ok now clobber what was there
SKIP=`expr $SWPLO + 4`
dd if=$SWAPDEV of=$SWAPDEV iseek=$SKIP oseek=$SKIP count=2 conv=swab 2>/dev/null
exit 0

---------- Cut Here ---------------


Once you have a copy of the details refer to the SCO Technical Articles on Why machines panic and how to determine the cause, in particular:


Comments and suggestions always welcome - tom@tkrh.demon.co.uk