NetBSD Problem Report #45635
From njoly@lanfeust.sis.pasteur.fr Sun Nov 20 22:12:41 2011
Return-Path: <njoly@lanfeust.sis.pasteur.fr>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id AC4A663D6F9
for <gnats-bugs@gnats.NetBSD.org>; Sun, 20 Nov 2011 22:12:41 +0000 (UTC)
Message-Id: <20111120221228.5CB74DC9BD@lanfeust.sis.pasteur.fr>
Date: Sun, 20 Nov 2011 23:12:28 +0100 (CET)
From: njoly@pasteur.fr
Reply-To: njoly@pasteur.fr
To: gnats-bugs@gnats.NetBSD.org
Subject: KASSERT "fli->fli_trans_cnt == 0" failed
X-Send-Pr-Version: 3.95
>Number: 45635
>Category: kern
>Synopsis: KASSERT "fli->fli_trans_cnt == 0" failed
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Nov 20 22:15:00 +0000 2011
>Closed-Date: Mon Nov 21 23:26:43 +0000 2011
>Last-Modified: Mon Nov 21 23:26:43 +0000 2011
>Originator: Nicolas Joly
>Release: NetBSD 5.99.56
>Organization:
Institut Pasteur
>Environment:
System: NetBSD lanfeust.sis.pasteur.fr 5.99.56 NetBSD 5.99.56 (LANFEUST) #13: Fri Nov 18 22:27:54 CET 2011 njoly@lanfeust.sis.pasteur.fr:/local/src/NetBSD/obj.amd64/sys/arch/amd64/compile/LANFEUST amd64
Architecture: x86_64
Machine: amd64
>Description:
Running cat(1) on a directory from a mounted msdos file system result in a
reproductible KASSERT.
njoly@petaure [~]> mount -vv | grep windows
/dev/wd0f on /mount/windows/D type msdos (local, fsid: 0x5/0x764f, reads: sync 1 async 0, writes: sync 0 async 0, [msdos: uid=0, gid=0, mask=0755, dirmask=0755, flags=0x20000012<longname,mntversioned,fatmirror>])
petaure [~]> cat /mount/windows/D >/dev/null
[...KASSERT...]
panic: kernel diagnostic assertion "fli->fli_trans_cnt == 0" failed: file "/local/src/NetBSD/src/sys/kern/vfs_trans.c", line 111
cpu0: Begin traceback...
kern_assert() at netbsd:kern_assert+0x48
fstrans_lwp_dtor() at netbsd:fstrans_lwp_dtor+0x6e
specificdata_fini() at netbsd:specificdata_fini+0x69
exit1() at netbsd:exit1+0x1d5
sys_exit() at netbsd:sys_exit+0x3e
syscall() at netbsd:syscall+0xac
cpu0: End traceback...
(gdb) bt
#0 0xffffffff8052af51 in cpu_reboot (howto=260, bootstr=<optimized out>)
at /local/src/NetBSD/src/sys/arch/amd64/amd64/machdep.c:753
#1 0xffffffff8070a857 in vpanic (
fmt=0xffffffff80ace7d8 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ", ap=0xffff80004adf9a90) at /local/src/NetBSD/src/sys/kern/subr_prf.c:308
#2 0xffffffff80877168 in kern_assert (fmt=<unavailable>)
at /local/src/NetBSD/src/sys/lib/libkern/kern_assert.c:50
#3 0xffffffff8080bce8 in fstrans_lwp_dtor (arg=<optimized out>)
at /local/src/NetBSD/src/sys/kern/vfs_trans.c:111
#4 0xffffffff8070c0ad in specificdata_fini (sd=0xffff80004700fc00,
ref=<optimized out>)
at /local/src/NetBSD/src/sys/kern/subr_specificdata.c:297
#5 0xffffffff804b0b6d in exit1 (l=0xffff80004ad352e0, rv=<optimized out>)
at /local/src/NetBSD/src/sys/kern/kern_exit.c:409
#6 0xffffffff804b136f in sys_exit (l=0xffff80004ad352e0,
uap=0xffff80004adf9c80, retval=<optimized out>)
at /local/src/NetBSD/src/sys/kern/kern_exit.c:184
#7 0xffffffff807246cc in sy_call (rval=0xffff80004adf9c30,
uap=0xffff80004adf9c80, l=0xffff80004ad352e0, sy=0xffffffff80e14b70)
at /local/src/NetBSD/src/sys/sys/syscallvar.h:61
#8 syscall (frame=0xffff80004adf9c80)
at /local/src/NetBSD/src/sys/arch/x86/x86/syscall.c:161
#9 0xffffffff801006a8 in Xsyscall ()
#10 0x0000000000000000 in ?? ()
(gdb) frame 3
#3 0xffffffff8080bce8 in fstrans_lwp_dtor (arg=<optimized out>)
at /local/src/NetBSD/src/sys/kern/vfs_trans.c:111
111 KASSERT(fli->fli_trans_cnt == 0);
(gdb) p *fli
$1 = {fli_succ = 0x0, fli_mount = 0xffff800049259000, fli_trans_cnt = 1,
fli_cow_cnt = 0, fli_lock_type = FSTRANS_SHARED}
>How-To-Repeat:
mount a msdos filesystem and use cat(1) on a directory.
>Fix:
>Release-Note:
>Audit-Trail:
From: "Juergen Hannken-Illjes" <hannken@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/45635 CVS commit: src/sys/fs/msdosfs
Date: Mon, 21 Nov 2011 10:46:57 +0000
Module Name: src
Committed By: hannken
Date: Mon Nov 21 10:46:57 UTC 2011
Modified Files:
src/sys/fs/msdosfs: msdosfs_vnops.c
Log Message:
Add missing fstrans_done().
Should fix PR #45635 (KASSERT "fli->fli_trans_cnt == 0" failed)
To generate a diff of this commit:
cvs rdiff -u -r1.78 -r1.79 src/sys/fs/msdosfs/msdosfs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Nicolas Joly <njoly@pasteur.fr>
To: gnats-bugs@NetBSD.org
Cc:
Subject: Re: PR/45635 CVS commit: src/sys/fs/msdosfs
Date: Mon, 21 Nov 2011 22:46:17 +0100
On Mon, Nov 21, 2011 at 10:50:04AM +0000, Juergen Hannken-Illjes wrote:
> The following reply was made to PR kern/45635; it has been noted by GNATS.
>
> From: "Juergen Hannken-Illjes" <hannken@netbsd.org>
> To: gnats-bugs@gnats.NetBSD.org
> Cc:
> Subject: PR/45635 CVS commit: src/sys/fs/msdosfs
> Date: Mon, 21 Nov 2011 10:46:57 +0000
>
> Module Name: src
> Committed By: hannken
> Date: Mon Nov 21 10:46:57 UTC 2011
>
> Modified Files:
> src/sys/fs/msdosfs: msdosfs_vnops.c
>
> Log Message:
> Add missing fstrans_done().
>
> Should fix PR #45635 (KASSERT "fli->fli_trans_cnt == 0" failed)
Confirmed fixed. Thanks a lot.
--
Nicolas Joly
Projects and Developments in Bioinformatics
Institut Pasteur, Paris.
State-Changed-From-To: open->closed
State-Changed-By: wiz@NetBSD.org
State-Changed-When: Mon, 21 Nov 2011 23:26:43 +0000
State-Changed-Why:
Confirmed fixed, thanks!
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.