Subject: kern/11152: yet another softdep panics
To: None <gnats-bugs@gnats.netbsd.org>
From: None <rafael@hal.rcast.u-tokyo.ac.jp>
List: netbsd-bugs
Date: 10/06/2000 05:34:10
>Number:         11152
>Category:       kern
>Synopsis:       yet another softdep panics
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Oct 06 05:34:01 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Rafael K. Morizawa
>Release:        1.5G, from the CVS repository (got it Oct 5 2000 JST)
>Organization:
RCAST, The University of Tokyo
>Environment:
NetBSD spock.cs.titech.ac.jp 1.5G NetBSD 1.5G (DATA) #0: Fri Oct  6 19:13:49 JST
 2000     root@spock.cs.titech.ac.jp:/usr/src/sys/arch/i386/compile/DATA i386

The machine is a Toshiba Portege 650CT notebook.
48MB of memory.
Below follows the dmesg.

--------
NetBSD 1.5G (DATA) #0: Fri Oct  6 19:13:49 JST 2000
    root@spock.cs.titech.ac.jp:/usr/src/sys/arch/i386/compile/DATA
cpu0: Intel Pentium (P54C) (586-class)
cpu0: features 1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
cpu0: features 1bf
total memory = 48892 KB
avail memory = 42604 KB
using 636 buffers containing 2544 KB of memory
BIOS32 rev. 0 found at 0xfe95b
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: Toshiba Host Bridge/Controller (rev. 0x11)
vga1 at pci0 dev 4 function 0: Chips and Technologies 65550 (rev. 0x04)
wsdisplay0 at vga1: console (80x25, vt100 emulation)
isa0 at mainbus0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
wdc0 at isa0 port 0x1f0-0x1f7 irq 14
wd0 at wdc0 channel 0 drive 0: <IBM-DTCA-23240>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 3102 MB, 6304 cyl, 16 head, 63 sec, 512 bytes/sect x 6354432 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
lpt0 at isa0 port 0x378-0x37b irq 7
sb0 at isa0 port 0x220-0x237 irq 5 drq 1: dsp v3.02
audio0 at sb0: half duplex, mmap, independent
midi0 at sb0: SB MIDI UART
opl0 at sb0: model OPL3
midi at opl0 not configured
wss0 at isa0 port 0x530-0x537 irq 10 drq 0 drq2 1: broken
audio1 at wss0: full duplex, mmap
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
pcic0 at isa0 port 0x3e0-0x3e1 iomem 0xd0000-0xdffff
pcic0: controller 0 (Intel 82365SL Revision 1) has sockets A and B
pcic0: controller 1 (Intel 82365SL Revision 1) has no sockets
pcmcia0 at pcic0 controller 0 socket 0
pcmcia1 at pcic0 controller 0 socket 1
apm0 at mainbus0: Power Management spec V1.2
biomask eb45 netmask eb45 ttymask fbc7
pcic0: controller 0 detecting irqs with mask 0xdeb8:..9..11..15
pcic0: using irq 9 for socket events
pcmcia0: CIS version PCMCIA 2.0 or 2.1
pcmcia0: CIS info: 3Com Corporation, 3C589, TP/BNC LAN Card Ver. 2a, 000002
pcmcia0: Manufacturer code 0x101, product 0x589
pcmcia0: function 0: network adapter, ccr addr 10000 mask 3
pcmcia0: function 0, config table entry 1: I/O card; irq mask ffff; iomask 4, io
space 0-f; io8 io16 irqlevel
pcmcia0: function 0, config table entry 3: I/O card; irq mask ffff; iomask 4, io
space 0-f; io8 io16 irqlevel
ep0 at pcmcia0 function 0 port 0x400-0x40f: 3Com 3c589 10Mbps Ethernet
ep0: address 00:20:af:41:c4:b1, 8KB byte-wide FIFO, 5:3 Rx:Tx split
ep0: 10baseT, 10base5, 10base2 (default 10baseT)
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
pcmcia0: card irq 11
stray interrupt 15
strip1: not multicast capable, IPv6 not enabled
strip1: not multicast capable, IPv6 not enabled
strip0: not multicast capable, IPv6 not enabled
strip0: not multicast capable, IPv6 not enabled
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsdisplay0: screen 5 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0

>Description:
I have been trying to use softdeps since it first appeared
in 1.4?, but without success. Since the first versions of
the softdep kernel the problem have been the same, as
follows.

I can use commands like "cp", "rm", "mv",  besides
redirecting outputs of programs in order to create,
delete, and move files around in a file system mounted
with softdep options. However, when using an editor (such
as "vi" or "emacs") the kernel panics whenever I try to
create a file in the disk.

I noticed that when using "emacs" the kernel does not
panic when the editor writes does an auto-save (creates
a backup file) of files I am currently editing.

Below follows the trace.

--------
GNU gdb 4.17
Copyright 1998 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--netbsd"...(no debugging symbols found)...
(gdb) target kcore netbsd.1.core
panic: softdep_fsync: pending ops
#0  0xc02d90c8 in db_last_command ()
(gdb) bt
#0  0xc02d90c8 in db_last_command ()
#1  0x256d000 in ?? ()
#2  0xc023436b in cpu_reboot ()
#3  0xc0129ee1 in db_sync_cmd ()
#4  0xc0129b04 in db_command ()
#5  0xc0129ca6 in db_command_loop ()
#6  0xc012cc66 in db_trap ()
#7  0xc0231d48 in kdb_trap ()
#8  0xc0238d7c in trap ()
#9  0xc0100d4d in calltrap ()
#10 0xc014fc1c in panic ()
#11 0xc020746a in acquire_lock ()
#12 0xc020b340 in softdep_update_inodeblock ()
#13 0xc020629c in ffs_update ()
#14 0xc020fbf8 in ffs_full_fsync ()
#15 0xc020f73a in ffs_fsync ()
#16 0xc020e70b in ffs_sync ()
#17 0xc016af74 in sys_sync ()
#18 0xc0169ecc in vfs_shutdown ()
#19 0xc0234343 in cpu_reboot ()
#20 0xc0129e30 in db_sifting_cmd ()
#21 0xc0129b04 in db_command ()
#22 0xc0129ca6 in db_command_loop ()
---Type <return> to continue, or q <return> to quit---
#23 0xc012cc66 in db_trap ()
#24 0xc0231d48 in kdb_trap ()
#25 0xc0238d7c in trap ()
#26 0xc0100d4d in calltrap ()
#27 0xc014fc1c in panic ()
#28 0xc020b5be in softdep_fsync ()
#29 0xc016e551 in sys_fsync ()
#30 0xc02393f7 in syscall ()
#31 0xc0100df9 in syscall1 ()
can not access 0xbfbfd04c, invalid translation (invalid PDE)
can not access 0xbfbfd04c, invalid translation (invalid PDE)
Cannot access memory at address 0xbfbfd04c.
(gdb) 
--------
>How-To-Repeat:
Build a kernel with softdeps enabled, reboot, mount a
file system with softdeps options, and try to create a
file with "vi" or "emacs" and save it to the file system
mounted with softdep options.

>Fix:
No idea. Sorry.

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