NetBSD Problem Report #54195
From kardel@pip.kardel.name Sat May 11 13:06:52 2019
Return-Path: <kardel@pip.kardel.name>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id 396367A16B
for <gnats-bugs@gnats.NetBSD.org>; Sat, 11 May 2019 13:06:52 +0000 (UTC)
Message-Id: <20190511130645.68D6DDA0D8C@pip.kardel.name>
Date: Sat, 11 May 2019 15:06:45 +0200 (CEST)
From: kardel@netbsd.org
Reply-To: kardel@netbsd.org
To: gnats-bugs@NetBSD.org
Subject: -current (20190508) null mounts: panic:kernel diagnostic assertion "fstrans_is_owner(mp)" failed: file "/src/NetBSD/cur/src/sys/kern/vfs_vnode.c", line 495
X-Send-Pr-Version: 3.95
>Number: 54195
>Category: kern
>Synopsis: unmount of stacked null mount may panic
>Confidential: no
>Severity: serious
>Priority: high
>Responsible: hannken
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat May 11 13:10:00 +0000 2019
>Closed-Date: Thu May 16 10:06:11 +0000 2019
>Last-Modified: Thu May 16 10:06:11 +0000 2019
>Originator: Frank Kardel
>Release: NetBSD 8.99.39 20190510
>Organization:
>Environment:
System: NetBSD pip.kardel.name 8.99.39 NetBSD 8.99.39 (GENERIC) #0: Fri May 10 09:42:46 UTC 2019 mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/amd64/compile/GENERIC amd64
Architecture: x86_64
Machine: amd64
>Description:
unmount of stacked null mounts may panic: kernel diagnostic assertion "fstrans_is_owner(mp)" failed: file "/src/NetBSD/cur/src/sys/kern/vfs_vnode.c", line 495
>How-To-Repeat:
mkdir /p
mkdir /p/d
mkdir /pp
mount -t null /p /pp
mkdir /ppp
mount -t null /pp /ppp
mount -t null /pp/d /ppp/d
umount /ppp/d
=> panic
(gdb) bt
#0 0xffffffff80222caa in cpu_reboot (howto=howto@entry=260, bootstr=bootstr@entry=0x0) at /src/NetBSD/cur/src/sys/arch/amd64/amd64/machdep.c:728
#1 0xffffffff80a13386 in vpanic (fmt=0xffffffff813594a8 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ", ap=ap@entry=0xffff82849760cc88)
at /src/NetBSD/cur/src/sys/kern/subr_prf.c:335
#2 0xffffffff80e4f03b in kern_assert (fmt=fmt@entry=0xffffffff813594a8 "kernel %sassertion \"%s\" failed: file \"%s\", line %d ")
at /src/NetBSD/cur/src/sys/lib/libkern/kern_assert.c:51
#3 0xffffffff80a77983 in vrele_flush (mp=<optimized out>) at /src/NetBSD/cur/src/sys/kern/vfs_vnode.c:495
#4 0xffffffff80a67023 in vflush (mp=mp@entry=0xffffe55b36b06008, skipvp=skipvp@entry=0xffffe55ab99d1038, flags=0) at /src/NetBSD/cur/src/sys/kern/vfs_mount.c:595
#5 0xffffffff808cef72 in nullfs_unmount (mp=0xffffe55b36b06008, mntflags=<optimized out>) at /src/NetBSD/cur/src/sys/miscfs/nullfs/null_vfsops.c:197
#6 0xffffffff80a6c07f in VFS_UNMOUNT (mp=mp@entry=0xffffe55b36b06008, a=a@entry=0) at /src/NetBSD/cur/src/sys/kern/vfs_subr.c:1340
#7 0xffffffff80a6936e in dounmount (mp=mp@entry=0xffffe55b36b06008, flags=0, l=l@entry=0xffffe55b3236e2a0) at /src/NetBSD/cur/src/sys/kern/vfs_mount.c:875
#8 0xffffffff80a6f80f in sys_unmount (l=0xffffe55b3236e2a0, uap=0xffff82849760d000, retval=<optimized out>) at /src/NetBSD/cur/src/sys/kern/vfs_syscalls.c:634
#9 0xffffffff80251092 in sy_call (rval=0xffff82849760cfb0, uap=0xffff82849760d000, l=0xffffe55b3236e2a0, sy=0xffffffff81857df0 <sysent+528>)
at /src/NetBSD/cur/src/sys/sys/syscallvar.h:65
#10 sy_invoke (code=22, rval=0xffff82849760cfb0, uap=0xffff82849760d000, l=0xffffe55b3236e2a0, sy=0xffffffff81857df0 <sysent+528>)
at /src/NetBSD/cur/src/sys/sys/syscallvar.h:94
#11 syscall (frame=0xffff82849760d000) at /src/NetBSD/cur/src/sys/arch/x86/x86/syscall.c:138
#12 0xffffffff802096dd in handle_syscall ()
#13 0x00007f7fff2b3d90 in ?? ()
#14 0x0000000000000000 in ?? ()
(gdb) print panicstr
$1 = 0xffffffff8198fe20 <scratchstr> "kernel diagnostic assertion \"fstrans_is_owner(mp)\" failed: file \"/src/NetBSD/cur/src/sys/kern/vfs_vnode.c\", line 495 "
The initial "mount -t null /p /pp" is necessary, without it the panic does not happen.
>Fix:
don't stack too many null mounts :-(.
>Release-Note:
>Audit-Trail:
From: "Juergen Hannken-Illjes" <hannken@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/54195 CVS commit: src/sys/kern
Date: Mon, 13 May 2019 08:16:56 +0000
Module Name: src
Committed By: hannken
Date: Mon May 13 08:16:56 UTC 2019
Modified Files:
src/sys/kern: vfs_trans.c
Log Message:
Walk down to the lowest mount for "fli_alias".
Address PR kern/54195 (null mounts: panic: ...).
To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/sys/kern/vfs_trans.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Responsible-Changed-From-To: kern-bug-people->hannken
Responsible-Changed-By: hannken@NetBSD.org
Responsible-Changed-When: Mon, 13 May 2019 08:39:37 +0000
Responsible-Changed-Why:
Take.
State-Changed-From-To: open->feedback
State-Changed-By: hannken@NetBSD.org
State-Changed-When: Mon, 13 May 2019 08:39:37 +0000
State-Changed-Why:
Committed a fix -- please confirm.
From: Frank Kardel <kardel@netbsd.org>
To: gnats-bugs@netbsd.org, hannken@netbsd.org, kern-bug-people@netbsd.org,
netbsd-bugs@netbsd.org, gnats-admin@netbsd.org
Cc:
Subject: Re: kern/54195 (unmount of stacked null mount may panic)
Date: Mon, 13 May 2019 21:21:44 +0200
Seems to work in my case - thanks for the fix.
Bug can be closed (might need pullups, though)
Frank
On 05/13/19 10:39, hannken@NetBSD.org wrote:
> Synopsis: unmount of stacked null mount may panic
>
> Responsible-Changed-From-To: kern-bug-people->hannken
> Responsible-Changed-By: hannken@NetBSD.org
> Responsible-Changed-When: Mon, 13 May 2019 08:39:37 +0000
> Responsible-Changed-Why:
> Take.
>
>
> State-Changed-From-To: open->feedback
> State-Changed-By: hannken@NetBSD.org
> State-Changed-When: Mon, 13 May 2019 08:39:37 +0000
> State-Changed-Why:
> Committed a fix -- please confirm.
>
>
>
State-Changed-From-To: feedback->closed
State-Changed-By: hannken@NetBSD.org
State-Changed-When: Thu, 16 May 2019 10:06:11 +0000
State-Changed-Why:
Confirmed fixed.
No pullups necessary.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.43 2018/01/16 07:36:43 maya Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2017
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.