Path: utzoo!mnetor!uunet!husc6!m2c!applix!jim
From: jim@applix.UUCP (Jim Morton)
Newsgroups: comp.unix.xenix
Subject: Re: What do panic messages mean?
Message-ID: <694@applix.UUCP>
Date: 10 May 88 16:39:28 GMT
References: <308@conexch.UUCP>
Organization: APPLiX Inc., Westboro MA
Lines: 33
Keywords: panic message interpretation Xenix 80286 help
Summary: some clues to xenix panic messages

In article <308@conexch.UUCP>, root@conexch.UUCP (Larry Dighera) writes:
> 
> Is the format of the panic message documented anywhere so that one
> can interpret them?  I realize that the third through fifth lines are
> 
> TRAP 000D in SYSTEM
> ax=5600, bx=00BC, cx=0000, dx=0020, si=002F, di=6936
> bp=03A4, fl=0206, uds=0018, es=0020
> pc=0038:9AA1,  ksp=0388
> panic: general protection trap
> 

There have been a number of postings on this subject, so here's a little
help. First, do a "nm /xenix | sort >/tmp/foo". (If you don't have the
development system, this won't work - you need nm(CP)). Then, take the
PC address given in your panic message (In the above case, 38:9AA1) and
find the routine in the kernel (by looking at /tmp/foo) that is located
at the next lower address. This is the routine that crashed the kernel.
If you're lucky, the name of this routine will give you a clue as to why
the system crashed - if the routine was, for example, "_ttioctl" it would
point towards a problem doing an ioctl() call on a serial port line.

You have to use the first "pc=" value given, if there is a second one
printed it probably points to the trap routine itself. If you REALLY
want to hack further, you can find the /usr/sys/* module the routine
is located in and adb(CP) around in it to see what's going on. That way
the register values (ax= bx=) may show you why the routine crashed.


--
Jim Morton, APPLiX Inc., Westboro, MA
UUCP: ...harvard!m2c!applix!jim
      jim@applix.m2c.org