Lock order reversal in 5.2-CURRENT

Daniel Lang dl at leo.org
Tue Aug 10 13:15:35 PDT 2004

Hi Terrence,

Terrence Koeman wrote on Tue, Aug 10, 2004 at 09:40:22PM +0200:
> > --- trap 0xc, eip = 0xc04b3ed2, esp = 0xd4dd7c90, ebp = 0xd4dd7ce0 ---
> > mi_switch(1,0,c060d2be,9c,dbba0) at mi_switch+0x102
> > 
> > Does the original poster have a debug kernel built?
> > 
> Yes I have, but I have no experience with the debugger. I'll be happy to
> carry out whatever's needed.

The process is documented in the developers handbook:


In short:

- first make sure dumpdevice is set and
  savecore enabled in /etc/rc.conf
- after a panic get a crash-dump, e.g.
  in ddb enter "call doadump()"
- after reboot the dump should be saved to e.g.

- analyse the dump with kernel-gdb:

  gdb -k /usr/obj/usr/src/sys/<KERNCONF>/kernel.debug /var/crash/vmcore.0

  (IIRC), so this is where the debug kernel is required.

  Please not that stock gdb is currently not able
  to act as kernel-debugger, you need to install the gdb6 port.

- Start with a backtrace (bt) of the kernel, look out for
  corrupted data. Obvious things are 0x0 pointers, where
  valid data is expected. If spotted, try to trace the source
  of corruption.

- Post any of your discoveries. Often just the stack-trace
  with function, arguments and source-lines can give valuable
  hints to the developers.

IRCnet: Mr-Spock     - Agartim billiard bumba m'abdul in papejim twista 
-  rumba rock n rolla. Leik'ab mai. Spirzon Heroin se'osit gaula.     -
               - Marijuana esit gaula. Haschisch. Opis. - 
 Daniel Lang * dl at leo.org * +49 89 2600 8122 * http://www.leo.org/~dl/

More information about the freebsd-current mailing list