kern/146708: Kernel panic in softdep_disk_write_complete
Nick Johnson
frebsd at spatula.net
Tue May 18 16:20:03 UTC 2010
>Number: 146708
>Category: kern
>Synopsis: Kernel panic in softdep_disk_write_complete
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue May 18 16:20:02 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator: Nick Johnson
>Release: FreeBSD 8.0-STABLE i386
>Organization:
morons.org
>Environment:
System: FreeBSD turing.morons.org 8.0-STABLE FreeBSD 8.0-STABLE #0: Tue May 4 21:21:27 PDT 2010 root at turing.morons.org:/usr/src/sys/i386/compile/TURING.8 i386
>Description:
Kernel panic while g_up is running. output from kgdb:
Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address = 0xeb13
fault code = supervisor write, page not present
instruction pointer = 0x20:0xc07b88dc
stack pointer = 0x28:0xc55c5bc4
frame pointer = 0x28:0xc55c5c3c
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 = 3 (g_up)
trap number = 12
panic: page fault
cpuid = 0
Uptime: 12d20h13m41s
Physical memory: 2030 MB
Dumping 290 MB: 275 259 243 227 211 195 179 163 147 131 115 99 83 67 51 35 19 3
Reading symbols from /boot/kernel/if_bge.ko...Reading symbols from /boot/kernel/if_bge.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/if_bge.ko
#0 doadump () at pcpu.h:246
246 pcpu.h: No such file or directory.
in pcpu.h
(kgdb) bt
#0 doadump () at pcpu.h:246
#1 0xc05e4fa7 in boot (howto=260) at ../../../kern/kern_shutdown.c:416
#2 0xc05e52e7 in panic (fmt=Variable "fmt" is not available.
) at ../../../kern/kern_shutdown.c:579
#3 0xc0849b03 in trap_fatal (frame=0xc55c5b84, eva=60179) at ../../../i386/i386/trap.c:938
#4 0xc0849d6b in trap_pfault (frame=0xc55c5b84, usermode=0, eva=60179) at ../../../i386/i386/trap.c:851
#5 0xc084a743 in trap (frame=0xc55c5b84) at ../../../i386/i386/trap.c:533
#6 0xc082bd8b in calltrap () at ../../../i386/i386/exception.s:165
#7 0xc07b88dc in softdep_disk_write_complete (bp=0xd9acc610) at ../../../ufs/ffs/ffs_softdep.c:4311
#8 0xc07bf3e7 in ffs_backgroundwritedone (bp=0xd9acc610) at buf.h:411
#9 0xc065db83 in bufdone (bp=0xd9acc610) at ../../../kern/vfs_bio.c:3255
#10 0xc0583a24 in g_vfs_done (bip=0xc8d78118) at ../../../geom/geom_vfs.c:97
#11 0xc0657fe9 in biodone (bp=0xc8d78118) at ../../../kern/vfs_bio.c:3096
#12 0xc0580dcf in g_io_schedule_up (tp=0xc59884a0) at ../../../geom/geom_io.c:675
#13 0xc0581178 in g_up_procbody () at ../../../geom/geom_kern.c:95
#14 0xc05b9b2d in fork_exit (callout=0xc0581110 <g_up_procbody>, arg=0x0, frame=0xc55c5d38) at ../../../kern/kern_fork.c:843
#15 0xc082be00 in fork_trampoline () at ../../../i386/i386/exception.s:270
(kgdb) frame 7
#7 0xc07b88dc in softdep_disk_write_complete (bp=0xd9acc610) at ../../../ufs/ffs/ffs_softdep.c:4311
4311 LIST_REMOVE(aip, ai_deps);
(kgdb) list
4306 }
4307 while ((aip =
4308 LIST_FIRST(&bmsafemap->sm_allocindirhd))) {
4309 aip->ai_state |= DEPCOMPLETE;
4310 aip->ai_buf = NULL;
4311 LIST_REMOVE(aip, ai_deps);
4312 handle_allocindir_partdone(aip);
4313 }
4314 while ((inodedep =
4315 LIST_FIRST(&bmsafemap->sm_inodedephd)) != NULL) {
(kgdb) print aip
$1 = (struct allocindir *) 0xc66c9800
(kgdb) print *aip
$2 = {ai_list = {wk_mp = 0x30006508, wk_list = {le_next = 0x1db68348, le_prev = 0x5a483000}, wk_type = 59611, wk_state = 8},
ai_next = {le_next = 0x34000045, le_prev = 0xc72e919c}, ai_offset = -1347025361, ai_newblkno = 1688651571895859522,
ai_oldblkno = 8055935644368671472, ai_freefrag = 0x21f924bd, ai_indirdep = 0xc6011080, ai_deps = {le_next = 0xeadb,
le_prev = 0xcb8794d8}, ai_buf = 0x0}
>How-To-Repeat:
Unknown; crash was seemingly random at 4:04 AM when no cron jobs were running and the system was under minimal activity and load.
Seems to be disk IO related; partitions are all mounted with noatime, and this is a disk that was first created under
FreeBSD 6 and later upgraded to FreeBSD 8, in case either of those might matter.
>Fix:
Unknown.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list