Subject: kern/16448: locking problem in softdep code
To: None <gnats-bugs@gnats.netbsd.org>
From: Matthias Scheler <tron@colwyn.zhadum.de>
List: netbsd-bugs
Date: 04/22/2002 20:24:13
>Number:         16448
>Category:       kern
>Synopsis:       locking problem in softdep code
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 22 11:25:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        NetBSD 1.5ZC 2002-04-22 sources
>Organization:
Matthias Scheler                                  http://scheler.de/~matthias/
>Environment:
System: NetBSD lyssa.zhadum.de 1.5ZC NetBSD 1.5ZC (LYSSA) #0: Mon Apr 22 12:41:06 CEST 2002 tron@lyssa.zhadum.de:/src/sys/compile/LYSSA i386
Architecture: i386
Machine: i386

>Description:
During medium heavy disk activity - I was burning a CD-ROM at speed 24 -
my system crashed because of a locking problem in our softdep code:

panic: softdep_lock: locking against myself

Here is a stack trace from the dump:

#0  0x1 in ?? ()
#1  0xc02bccdf in cpu_reboot ()
#2  0xc01fedeb in panic ()
#3  0xc01ae68d in acquire_lock ()
#4  0xc01b3807 in softdep_update_inodeblock ()
#5  0xc01ad403 in ffs_update ()
#6  0xc022087b in VOP_UPDATE ()
#7  0xc01b8ed0 in ffs_full_fsync ()
#8  0xc01b8a2c in ffs_fsync ()
#9  0xc0220200 in VOP_FSYNC ()
#10 0xc01b72ab in ffs_sync ()
#11 0xc021bab2 in sys_sync ()
#12 0xc021a9b2 in vfs_shutdown ()
#13 0xc02bccb7 in cpu_reboot ()
#14 0xc01fedeb in panic ()
#15 0xc01b5366 in softdep_pageiodone ()
#16 0xc02b3c8f in uvm_aio_aiodone ()
#17 0xc02b4278 in uvm_aiodone_daemon ()

[I can provide the crash dump for analysis of course.]

>How-To-Repeat:
I was (fortunately?) not able to reproduce the problem so far.

>Fix:
None provided.

>Release-Note:
>Audit-Trail:
>Unformatted: