Date: Fri, 2 Jun 2006 09:08:07 +0200 From: Wilko Bulte <wb@freebie.xs4all.nl> To: Robert Watson <rwatson@FreeBSD.org> Cc: freebsd-stable@FreeBSD.org, freebsd-alpha@FreeBSD.org Subject: Re: 6.1-RELEASE panic / lockmgr? Message-ID: <20060602070807.GB3779@freebie.xs4all.nl> In-Reply-To: <20060601230007.C69345@fledge.watson.org> References: <20060601212736.GA3380@freebie.xs4all.nl> <20060601230007.C69345@fledge.watson.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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(). Yesterday night I set debug.trace_on_panic=1 which sometime during the night gave me: [root@goldrush ~]# ./make-snap.sh \1 panic: lockmgr: thread 0xfffffc007d9d4fc0, not exclusive lock holder 0xfffffc007d950a80 unlocking cpuid = 1 KDB: stack backtrace: db_trace_self() at db_trace_self+0x18 kdb_backtrace() at kdb_backtrace+0x48 panic() at panic+0x1f0 lockmgr() at lockmgr+0x798 bqrelse() at bqrelse+0x598 bdwrite() at bdwrite+0x4fc ffs_update() at ffs_update+0x3c8 ufs_inactive() at ufs_inactive+0x468 VOP_INACTIVE_APV() at VOP_INACTIVE_APV+0x60 vinactive() at vinactive+0xa0 vput() at vput+0x210 handle_workitem_remove() at handle_workitem_remove+0x23c process_worklist_item() at process_worklist_item+0x2b8 softdep_process_worklist() at softdep_process_worklist+0xbc softdep_flush() at softdep_flush+0x2a0 fork_exit() at fork_exit+0xc0 exception_return() at exception_return --- root of call graph --- KDB: enter: panic I'll try your suggestion with critical_enter() tonight, thanks. Wilko -- Wilko Bulte wilko@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060602070807.GB3779>