Subject: kern/14518: kernel panic - "panic: softdep_disk_write_complete: lock is held"
To: None <gnats-bugs@gnats.netbsd.org>
From: None <dive@endersgame.net>
List: netbsd-bugs
Date: 11/10/2001 01:43:04
>Number:         14518
>Category:       kern
>Synopsis:       Kernel panic occured while reading/writing heavily
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Nov 09 17:44:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     dive-o
>Release:        NetBSD 1.5Y 20011109
>Organization:
/~\ The ASCII                       Sean Davis
\ / Ribbon Campaign                 aka dive-o
 X  Against HTML
/ \ Email!                      dive@endersgame.net
>Environment:
Celeron 533mhz, Highpoint HPT366 ATA66 controller w/ 19GB IBM DPTA-372050 disk
System: NetBSD eros.endersgame.net 1.5Y NetBSD 1.5Y (EROS) #173: Fri Nov 9 11:49:31 EST 2001 dive@eros.endersgame.net:/cvs/netbsd/src/sys/arch/i386/compile/EROS i386
Architecture: i386
Machine: i386
>Description:
	While in X, and running two IO-intensive applications (one was an rm
-rf, the other was a cvs checkout), the kernel paniced. This has occured
twice, the trace of the last one follows.
eros# gdb netbsd.0
GNU gdb 5.0-nb1
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-unknown-netbsdelf"...
(no debugging symbols found)...
(gdb) symbol-file /netbsd.gdb
Reading symbols from /netbsd.gdb...done.
(gdb) target kcore netbsd.0.core
panic: softdep_disk_write_complete: lock is held
#0  0x1 in ?? ()
(gdb) where
#0  0x1 in ?? ()
#1  0xc01e9fe3 in cpu_reboot (howto=256, bootstr=0x0)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../arch/i386/i386/machdep.c:1881
#2  0xc0110cbb in db_sync_cmd ()
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../ddb/db_command.c:744
#3  0xc01106ff in db_command (last_cmdp=0xc026bc38, cmd_table=0x0)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../ddb/db_command.c:320
#4  0xc0110b1f in db_command_loop ()
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../ddb/db_command.c:579
#5  0xc0114474 in db_trap (type=1, code=0)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../ddb/db_trap.c:88
#6  0xc01e6116 in kdb_trap (type=1, code=0, regs=0xcb676210)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../arch/i386/i386/db_interface.c:125
#7  0xc01ede47 in trap (frame={tf_gs = 16, tf_fs = 16, tf_es = -882442224, 
      tf_ds = -882442224, tf_edi = 256, tf_esi = -1071311040, 
      tf_ebp = -882417072, tf_ebx = -882417028, tf_edx = -1071339852, 
      tf_ecx = 1840, tf_eax = 532, tf_trapno = 1, tf_err = 0, 
      tf_eip = -1071750688, tf_cs = 8, tf_eflags = 514, tf_esp = -882417040, 
      tf_ss = -1072444632, tf_vm86_es = -1017267736, tf_vm86_ds = -805241012, 
      tf_vm86_fs = -882416896, tf_vm86_gs = -1071858731})
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../arch/i386/i386/trap.c:215
#8  0xc0100baf in calltrap ()
#9  0xc013cb28 in panic (
    fmt=0xc0251740 "softdep_disk_write_complete: lock is held")
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../kern/subr_prf.c:234
#10 0xc01a4e0b in softdep_disk_write_complete (bp=0xc35db9e8)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../ufs/ffs/ffs_softdep.c:3316
#11 0xc015543e in biodone (bp=0xc35db9e8)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../kern/vfs_bio.c:924
#12 0xc01f7e9a in wddone (v=0xc0559800)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../dev/ata/wd.c:624
#13 0xc01fb233 in wdc_ata_bio_done (chp=0xc0558cc4, xfer=0xc0551030)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../dev/ata/ata_wdc.c:624
#14 0xc01faa20 in wdc_ata_bio_intr (chp=0xc0558cc4, xfer=0xc0551030, irq=1)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../dev/ata/ata_wdc.c:568
#15 0xc0107b5c in wdcintr (arg=0xc0558cc4)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../dev/ic/wdc.c:712
#16 0xc0204801 in hpt_pci_intr (arg=0xc0558c00)
    at /cvs/netbsd/src/sys/arch/i386/compile/EROS/../../../../dev/pci/pciide.c:3369
#17 0xc010160a in Xintr11 ()
#18 0x80000000 in ?? ()

>How-To-Repeat:
	Get in X (not sure if that matters), and put a lot of read and write
load on the disk.
>Fix:
	Unknown
>Release-Note:
>Audit-Trail:
>Unformatted: