6.1-RELEASE panic / lockmgr?

Wilko Bulte wb at freebie.xs4all.nl
Fri Jun 2 09:41:37 PDT 2006


On Thu, Jun 01, 2006 at 11:01:07PM +0100, Robert Watson wrote..
> 
> On Thu, 1 Jun 2006, Wilko Bulte wrote:
> 
> >My dual-CPU DS20 Alpha box can more or less consistently be
> >forced into a panic like:
> >
> >FreeBSD/alpha (goldrush.wbnet) (ttyd0)^
> >
> >login: panic: lockmgr: thread 0xfffffc007d9d4a80, not exclusive lock holder
> >0xfffffc006052d260 unlocking
> >cpuid = 1
> >KDB: enter: panic
> >
> >Trigger is a "make -j2 release".  j2 seems to be needed, not seen it with
> >-j1
> >
> >Unfortunately after printing the line with "KDB" the whole thing appears 
> >to become completely catatonic :(
> 
> Try putting a call to critical_enter() towards the beginning of panic(). 
> Sometimes this increases the reliability of entering the debugger by 
> avoiding interrupt delivery during the process of entering.  If you want to 
> be able to continue out, you'll need a critical_exit() at the end, but that 
> generally isn't helpful for panic().

Jay! ANother one, and this one entered the debugger alright:

racing pid 25497 tid 100147 td 0xfffffc004df56000
kdb_enter() at kdb_enter+0x48
panic() at panic+0x210
lockmgr() at lockmgr+0x798
vop_stdunlock() at vop_stdunlock+0x34
VOP_UNLOCK_APV() at VOP_UNLOCK_APV+0x84
vput() at vput+0xb4
lookup() at lookup+0xd38
namei() at namei+0x554
do_execve() at do_execve+0x17c
kern_execve() at kern_execve+0x160
execve() at execve+0x60
syscall() at syscall+0x438
XentSys() at XentSys+0x64
--- syscall (59, FreeBSD ELF64, execve) ---
--- user mode ---
db> 

How to proceed here?  I have 0 clue on lockmgr & friends :)

-- 
Wilko Bulte				wilko at FreeBSD.org


More information about the freebsd-stable mailing list