Date: Thu, 5 Sep 2002 09:21:43 +0700 (OMSST) From: El Vampiro <vampiro@rootshell.ru> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/42434: another softupdates based kernel panic: handle_written_inodeblock: live inodedep Message-ID: <20020905022143.3A7F7566E@rshb.com.ru>
next in thread | raw e-mail | index | archive | help
>Number: 42434
>Category: kern
>Synopsis: another softupdates based kernel panic: handle_written_inodeblock: live inodedep
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Sep 04 19:30:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:
>Release: FreeBSD 4.6-STABLE i386
>Organization:
>Environment:
System: FreeBSD rshb.com.ru 4.6-STABLE FreeBSD 4.6-STABLE #1: Mon Sep 2 12:42:02 OMSST 2002 vampiro@rshb.com.ru:/usr/obj/usr/src/sys/NEWMONSTER i386
Hardware: Intel STL2 based server
Kernel:
machine i386
cpu I686_CPU
ident NEWMONSTER
maxusers 128
makeoptions DEBUG=-g
options CPU_ENABLE_SSE
options INET
options FFS
options FFS_ROOT
options NFS
options SOFTUPDATES
options PROCFS
options CD9660
options COMPAT_43
options UCONSOLE
options USERCONFIG
options VISUAL_USERCONFIG
options P1003_1B
options _KPOSIX_PRIORITY_SCHEDULING
options _KPOSIX_VERSION=199309L
options PERFMON
options SYSVSHM
options SYSVMSG
options SYSVSEM
options SHMMAXPGS=8192 # max amount of shared memory pages (4k on i386)
options SHMALL=33554432 # max amount of shared memory (bytes)
options SHMSEG=256 # max shared mem id's per process
options SHMMNI=256 # max shared mem id's per system
options MSGMNB=8192 # max # of bytes in a queue
options MSGMNI=256 # number of message queue identifiers per system
options MSGSEG=256 # number of message segments per queue
options MSGSSZ=64 # size of a message segment
options MSGTQL=8192 # max messages in system per system
options SEMMAP=256
options SEMMNI=256
options SEMMNS=512
options SEMMNU=256
options INCLUDE_CONFIG_FILE
options IPFILTER
options IPFILTER_LOG
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFW2
options RANDOM_IP_ID
options ICMP_BANDLIM
options ACCEPT_FILTER_HTTP
options VESA
options PANIC_REBOOT_WAIT_TIME=20
options SMBFS
options LIBMCHAIN
options LIBICONV
options NETSMB
options NETSMBCRYPTO
options UFS_DIRHASH
options SHOW_BUSYBUFS
device isa
device pci
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
device ata
device atadisk
device atapicd
options ATA_STATIC_ID
device ahc
device aic0 at isa?
device isp # Qlogic family
device ispfw # Firmware for QLogic HBAs
device scbus
device da
device sa
device cd
device pass
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1
device vga0 at isa?
device sc0 at isa? flags 0x100
options SC_HISTORY_SIZE=256
options SC_NORM_ATTR="(FG_GREEN|BG_BLACK)"
options SC_NORM_REV_ATTR="(FG_YELLOW|BG_GREEN)"
options SC_KERNEL_CONS_ATTR="(FG_RED|BG_BLACK)"
options SC_KERNEL_CONS_REV_ATTR="(FG_BLACK|BG_RED)"
device npx0 at nexus? port IO_NPX irq 13
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
# device sio2 at isa? disable port IO_COM3 irq 5
# device sio3 at isa? disable port IO_COM4 irq 9
device miibus
device dc
device fxp
pseudo-device loop
pseudo-device ether
pseudo-device tun
pseudo-device pty
pseudo-device bpf 6
pseudo-device vn 2
pseudo-device gzip
pseudo-device splash
pseudo-device snp
Dmesg:
Copyright (c) 1992-2002 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 4.6-STABLE #1: Mon Sep 2 12:42:02 OMSST 2002
vampiro@rshb.com.ru:/usr/obj/usr/src/sys/NEWMONSTER
Timecounter "i8254" frequency 1193182 Hz
Timecounter "TSC" frequency 999724453 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (999.72-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0x68a Stepping = 10
Features=0x387fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,PN,MMX,FXSR,SSE>
real memory = 268369920 (262080K bytes)
avail memory = 257236992 (251208K bytes)
Preloaded elf kernel "kernel" at 0xc03d1000.
VESA: v2.0, 4096k memory, flags:0x0, mode table:0xc0372682 (1000022)
VESA: ATI MACH64
netsmb_dev: loaded
Pentium Pro MTRR support enabled
Using $PIR table, 268435454 entries at 0xc00fdf10
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <ServerWorks NB6635 3.0LE host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
pci0: <ATI Mach64-GV graphics accelerator> at 2.0 irq 11
fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0x5800-0x583f mem 0xfb000000-0xfb0fffff,0xfb101000-0xfb101fff irq 10 at device 3.0 on pci0
fxp0: Ethernet address 00:d0:b7:b8:ab:64
inphy0: <i82555 10/100 media interface> on miibus0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
dc0: <Davicom DM9102A 10/100BaseTX> port 0x5400-0x54ff mem 0xfb102000-0xfb1020ff irq 7 at device 7.0 on pci0
dc0: Ethernet address: 00:80:ad:08:12:2b
miibus1: <MII bus> on dc0
ukphy0: <Generic IEEE 802.3u media interface> on miibus1
ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
isab0: <ServerWorks IB6566 PCI to ISA bridge> at device 15.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <ServerWorks ROSB4 ATA33 controller> port 0x5840-0x584f,0x374-0x377,0x170-0x177 at device 15.1 on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
pcib1: <ServerWorks NB6635 3.0LE host to PCI bridge> on motherboard
pci1: <PCI bus> on pcib1
ahc_pci0: <Adaptec aic7899 Ultra160 SCSI adapter> port 0x6000-0x60ff mem 0xfd000000-0xfd000fff irq 9 at device 4.0 on pci1
aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
ahc_pci1: <Adaptec aic7899 Ultra160 SCSI adapter> port 0x6400-0x64ff mem 0xfd001000-0xfd001fff irq 5 at device 4.1 on pci1
aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xc97ff,0xc9800-0xcf7ff on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ipfw2 initialized, divert disabled, rule-based forwarding enabled, default to accept, logging unlimited
IP Filter: v3.4.29 initialized. Default = pass all, Logging = enabled
acd0: CDROM <SONY CD-ROM CDU5221> at ata0-master PIO4
Waiting 2 seconds for SCSI devices to settle
sa0 at ahc1 bus 0 target 0 lun 0
sa0: <ARCHIVE Python 04106-XXX 7550> Removable Sequential Access SCSI-2 device
sa0: 10.000MB/s transfers (10.000MHz, offset 15)
da0 at ahc0 bus 0 target 0 lun 0
da0: <QUANTUM ATLAS10K3_18_WLS 020W> Fixed Direct Access SCSI-3 device
da0: 160.000MB/s transfers (80.000MHz, offset 127, 16bit), Tagged Queueing Enabled
da0: 17537MB (35916548 512 byte sectors: 255H 63S/T 2235C)
da1 at ahc0 bus 0 target 1 lun 0
da1: <QUANTUM ATLAS10K3_18_WLS 020W> Fixed Direct Access SCSI-3 device
da1: 160.000MB/s transfers (80.000MHz, offset 127, 16bit), Tagged Queueing Enabled
da1: 17537MB (35916548 512 byte sectors: 255H 63S/T 2235C)
Mounting root from ufs:/dev/da0s1a
WARNING: / was not properly dismounted
>Description:
System got down upon minimal activity
gdb -k kernel.debug vmcore.1
GNU gdb 4.18 (FreeBSD)
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-unknown-freebsd"...
IdlePTD at phsyical address 0x003f0000
initial pcb at physical address 0x0035e7e0
panicstr: page fault
panic messages:
---
panic: handle_written_inodeblock: live inodedep
syncing disks...
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x30
fault code = supervisor read, page not present
instruction pointer = 0x8:0xc022fc24
stack pointer = 0x10:0xc0335bac
frame pointer = 0x10:0xc0335bb4
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = Idle
interrupt mask = bio
trap number = 12
panic: page fault
Uptime: 2d7h42m57s
dumping to dev #da/0x20009, offset 128
dump 255 254 253 252 251 250 249 248 247 246 245 244 243 242 241 240 239 238 237 236 235 234 233 232 231 230 229 228 227 226 225 224 223 222 221 220 219 218 217 216 215 214 213 212 211 210 209 208 207 206 205 204 203 202 201 200 199 198 197 196 195 194 193 192 191 190 189 188 187 186 185 184 183 182 181 180 179 178 177 176 175 174 173 172 171 170 169 168 167 166 165 164 163 162 161 160 159 158 157 156 155 154 153 152 151 150 149 148 147 146 145 144 143 142 141 140 139 138 137 136 135 134 133 132 131 130 129 128 127 126 125 124 123 122 121 120 119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104 103 102 101 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
---
#0 dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487
487 if (dumping++) {
(kgdb) where
#0 dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487
#1 0xc0191ec3 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:316
#2 0xc01922e8 in poweroff_wait (junk=0xc032ccac, howto=-1070413873)
at /usr/src/sys/kern/kern_shutdown.c:595
#3 0xc0279486 in trap_fatal (frame=0xc0335b6c, eva=48)
at /usr/src/sys/i386/i386/trap.c:974
#4 0xc0279159 in trap_pfault (frame=0xc0335b6c, usermode=0, eva=48)
at /usr/src/sys/i386/i386/trap.c:867
#5 0xc0278d43 in trap (frame={tf_fs = 16, tf_es = -1070399472,
tf_ds = -1072168944, tf_edi = 0, tf_esi = 0, tf_ebp = -1070376012,
tf_isp = -1070376040, tf_ebx = -1070281156, tf_edx = 6864960,
tf_ecx = -1054072818, tf_eax = 0, tf_trapno = 12, tf_err = 0,
tf_eip = -1071449052, tf_cs = 8, tf_eflags = 66050, tf_esp = -967813796,
tf_ss = 0}) at /usr/src/sys/i386/i386/trap.c:466
#6 0xc022fc24 in acquire_lock (lk=0xc034ce3c)
at /usr/src/sys/ufs/ffs/ffs_softdep.c:266
#7 0xc0235308 in softdep_count_dependencies (bp=0xc650555c, wantcount=0)
at /usr/src/sys/ufs/ffs/ffs_softdep.c:4792
#8 0xc0238544 in ffs_fsync (ap=0xc0335c28)
at /usr/src/sys/ufs/ffs/ffs_vnops.c:168
#9 0xc023702f in ffs_sync (mp=0xc129e400, waitfor=2, cred=0xc0a42680,
p=0xc03732c0) at vnode_if.h:558
#10 0xc01c2067 in sync (p=0xc03732c0, uap=0x0)
at /usr/src/sys/kern/vfs_syscalls.c:576
#11 0xc0191c36 in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:235
#12 0xc01922e8 in poweroff_wait (junk=0xc0323e40, howto=-967860608)
at /usr/src/sys/kern/kern_shutdown.c:595
#13 0xc02339be in handle_written_inodeblock (inodedep=0xc19d4400,
bp=0xc64f9e80) at /usr/src/sys/ufs/ffs/ffs_softdep.c:3590
#14 0xc02332ba in softdep_disk_write_complete (bp=0xc64f9e80)
at /usr/src/sys/ufs/ffs/ffs_softdep.c:3242
#15 0xc01b9f79 in biodone (bp=0xc64f9e80) at /usr/src/sys/kern/vfs_bio.c:2703
#16 0xc012b765 in dadone (periph=0xc12a2600, done_ccb=0xc1a0a000)
at /usr/src/sys/cam/scsi/scsi_da.c:1496
#17 0xc01274ab in camisr (queue=0xc0359c50) at /usr/src/sys/cam/cam_xpt.c:6374
#18 0xc01272bd in swi_cambio () at /usr/src/sys/cam/cam_xpt.c:6277
#19 0xc026e823 in doreti_swi ()
(kgdb) up 6
#6 0xc022fc24 in acquire_lock (lk=0xc034ce3c)
at /usr/src/sys/ufs/ffs/ffs_softdep.c:266
266 lk->lkt_held = CURPROC->p_pid;
(kgdb) l
261 panic("softdep_lock: locking against myself");
262 else
263 panic("softdep_lock: lock held by %d", holder);
264 }
265 lk->lkt_spl = splbio();
266 lk->lkt_held = CURPROC->p_pid;
267 lockcnt++;
268 }
269
270 static void
(kgdb) p lk
$1 = (struct lockit *) 0x68c040
(kgdb) p lk->lkt_spl
cannot read proc at 0
(kgdb) p holder
$2 = 0
(kgdb) p lk->lkt_held
cannot read proc at 0
I would wonder if somebody cares this PR. But if someone do I'll provide more info of course.
>How-To-Repeat:
Turn softupdates on.
>Fix:
Wish I knew...
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020905022143.3A7F7566E>
