Subject: kern/34270: Unmounting an NFS filesystem causes a kernel panic
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <tron@colwyn.zhadum.org.uk>
List: netbsd-bugs
Date: 08/24/2006 09:45:05
>Number: 34270
>Category: kern
>Synopsis: Unmounting an NFS filesystem causes a kernel panic
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Aug 24 09:45:05 +0000 2006
>Originator: tron@colwyn.zhadum.org.uk
>Release: NetBSD 4.99.1 2006-08-24 sources
>Organization:
Matthias Scheler http://zhadum.org.uk/
>Environment:
System: NetBSD lyssa.zhadum.org.uk 4.99.1 NetBSD 4.99.1 (LYSSA) #0: Wed Aug 23 09:36:51 BST 2006 tron@lyssa.zhadum.org.uk:/src/sys/compile/LYSSA i386
Architecture: i386
Machine: i386
>Description:
After upgrading to a kernel built from today's NetBSD-current system my
desktop crashed twice with a panic like this:
multiply freed item 0xc2723600
panic: free: duplicated free
Here is what "gdb" gets out of the crash dump:
(gdb) where
#0 0xc0693000 in ?? ()
#1 0xc038fc1b in cpu_reboot (howto=260, bootstr=0x0)
at /usr/src/sys/arch/i386/i386/machdep.c:869
#2 0xc030ad48 in panic (fmt=0xc04fcd1e "trap")
at /usr/src/sys/kern/subr_prf.c:246
#3 0xc0398a4c in trap (frame=0xce246974)
at /usr/src/sys/arch/i386/i386/trap.c:339
#4 0xc010b191 in calltrap ()
#5 0xc0189614 in db_get_value (addr=128, size=4, is_signed=0)
at /usr/src/sys/ddb/db_access.c:62
#6 0xc038bf60 in db_numargs (retaddrp=0x80)
at /usr/src/sys/arch/i386/i386/db_trace.c:151
#7 0xc038c87b in db_stack_trace_print (addr=-836474140, have_addr=1,
count=65535, modif=0xc04efddf "", pr=0xc030ab70 <printf>)
at /usr/src/sys/arch/i386/i386/db_trace.c:462
#8 0xc030ad1f in panic (fmt=0xc04f6b89 "free: duplicated free")
at /usr/src/sys/kern/subr_prf.c:235
#9 0xc02e5635 in free (addr=0xc27dc600, ksp=0xc0555440)
at /usr/src/sys/kern/kern_malloc.c:557
#10 0xc0304a0b in iostat_free (stats=0xc27dc600)
at /usr/src/sys/kern/subr_iostat.c:177
#11 0xc0231e0b in nfs_unmount (mp=<incomplete type>, mntflags=0, l=0xce1ebdac)
at /usr/src/sys/nfs/nfs_vfsops.c:906
#12 0xc033c187 in dounmount (mp=<incomplete type>, flags=0, l=0xce1ebdac)
at /usr/src/sys/kern/vfs_syscalls.c:620
#13 0xc033c59e in sys_unmount (l=0xce1ebdac, v=0xce246c48, retval=0xce246c68)
at /usr/src/sys/kern/vfs_syscalls.c:536
#14 0xc03981d3 in syscall_plain (frame=0xce246c88)
at /usr/src/sys/arch/i386/i386/syscall.c:144
It looks like the system crashed when amd(8) tried to unmount a filesystem.
>How-To-Repeat:
Boot a kernel build from today's source, mount a filesystem via NFS
and unmount it.
>Fix:
None provided. But it looks like revision 1.160 of "src/sys/nfs/nfs_vfsops.c"
causes this bug.