7.0-RELEASE Kernel Panic in _mtx_lock_sleep() on shutdown

Sam Kingston sam at sjkwi.com.au
Fri Apr 4 00:46:19 UTC 2008


Hi all,

I am getting panic()s upon each shutdown (visibly after disks have been 
synced). kgdb reveals the at /usr/src/sys/kern/kern_mutex.c:335 
_mtx_lock_sleep() as the culprit.

Running 7.0-RELEASE with root mounted from a ZFS file system. Seems to 
only have started since creating a second raidz data pool (mia-data), 
yet dismounting this before shutdown does not stop the panic().

uname:
FreeBSD mia.dhcp.sjkwi.com.au 7.0-RELEASE FreeBSD 7.0-RELEASE #1: Sun 
Mar  2 07:26:17 EST 2008 
root at mia.dhcp.sjkwi.com.au:/usr/obj/usr/src/sys/MIA  amd64

zpool list:
NAME                    SIZE    USED   AVAIL    CAP  HEALTH     ALTROOT
mia-data               2.03T   1.05T   1003G    51%  ONLINE     -
mia-sys                 288G   9.58G    278G     3%  ONLINE     -

panic:
Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address       = 0x258
fault code                  = supervisor read data, page not present
instruction pointer 	    = 0x8:0xffffffff802c805a
stack pointer               = 0x10:0xffffffffb33eb840
frame pointer               = 0x10:0xffffff00011109c0
code segment                = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags            = interrupt enabled, resume, IOPL = 0
current process             = 1 (init)
trap number                 = 12
panic: page fault
cpuid = 0

kgdb output:
#0  doadump () at pcpu.h:194
#1  0x0000000000000004 in ?? ()
#2  0xffffffff802d271f in boot (howto=260) at 
/usr/src/sys/kern/kern_shutdown.c:409
#3  0xffffffff802d2b48 in panic (fmt=0x104 <Address 0x104 out of bounds>)
     at /usr/src/sys/kern/kern_shutdown.c:563
#4  0xffffffff804a510a in trap_fatal (frame=0xffffff00011109c0, 
eva=18446742974215805136)
     at /usr/src/sys/amd64/amd64/trap.c:724
#5  0xffffffff804a54b1 in trap_pfault (frame=0xffffffffb33eb790, usermode=0)
     at /usr/src/sys/amd64/amd64/trap.c:641
#6  0xffffffff804a5d6f in trap (frame=0xffffffffb33eb790)
     at /usr/src/sys/amd64/amd64/trap.c:410
#7  0xffffffff8048cbce in calltrap () at 
/usr/src/sys/amd64/amd64/exception.S:169
#8  0xffffffff802c805a in _mtx_lock_sleep (m=0xffffff00068772d8,
     tid=18446742974215817664, opts=Variable "opts" is not available.
) at /usr/src/sys/kern/kern_mutex.c:335
#9  0xffffffff803445b3 in vrele (vp=0xffffff00068771f0)
     at /usr/src/sys/kern/vfs_subr.c:2128
#10 0xffffffff80344b46 in vflush (mp=Variable "mp" is not available.
) at /usr/src/sys/kern/vfs_subr.c:2441
#11 0xffffffff8082e0ac in ?? ()
#12 0xffffff000636a000 in ?? ()
#13 0xffffff000636a054 in ?? ()
#14 0x0000000000005000 in ?? ()
#15 0x0000000000080000 in ?? ()
#16 0xffffffffb33eba60 in ?? ()
#17 0x0000000000000000 in ?? ()
#18 0xffffff00011109c0 in ?? ()
#19 0x0000000000080000 in ?? ()
#20 0x0000000000005000 in ?? ()
#21 0x0000000000080000 in ?? ()
#22 0x0000000000000000 in ?? ()
#23 0xffffffff8033d874 in dounmount (mp=0xffffff0006348ca0, 
flags=17893824, td=0x80000)
     at /usr/src/sys/kern/vfs_mount.c:1286
#24 0xffffffff80343129 in vfs_unmountall () at 
/usr/src/sys/kern/vfs_subr.c:2936
#25 0xffffffff802d297f in boot (howto=8) at 
/usr/src/sys/kern/kern_shutdown.c:391
#26 0xffffffff802d2c9d in reboot (td=Variable "td" is not available.
) at /usr/src/sys/kern/kern_shutdown.c:169
#27 0xffffffff804a571c in syscall (frame=0xffffffffb33ebc70)
     at /usr/src/sys/amd64/amd64/trap.c:852
#28 0xffffffff8048cddb in Xfast_syscall () at 
/usr/src/sys/amd64/amd64/exception.S:290
#29 0x000000000040854c in ?? ()

instruction pointer:
#8  0xffffffff802c805a in _mtx_lock_sleep (m=0xffffff00068772d8,
     tid=18446742974215817664, opts=Variable "opts" is not available.
) at /usr/src/sys/kern/kern_mutex.c:335

dmesg (cut due to long length:
http://users.sjkwi.com.au/sam/fbsd/dmesg.txt

kernel config (cut due to long length):
http://users.sjkwi.com.au/sam/fbsd/MIA

Any ideas?

--

Kind regards,

Sam Kingston
SJK Web Industries

Email      sam at sjkwi.com.au
Web        http://www.sjkwi.com.au


More information about the freebsd-hackers mailing list