Subject: kern/33374: mount_null with mount_union panic: vref used where vget required
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <chap@NetBSD.org>
List: netbsd-bugs
Date: 04/27/2006 04:35:00
>Number:         33374
>Category:       kern
>Synopsis:       mount_null with mount_union panic: vref used where vget required
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Apr 27 04:35:00 +0000 2006
>Originator:     Chapman Flack
>Release:        3.99.18
>Organization:
>Environment:
NetBSD 3.99.18 NetBSD 3.99.18 (olaf) #4: Mon Apr 24 17:00:37 EDT 2006 xxx@xxx:/usr/src/sys/arch/i386/compile/olaf i386
>Description:
A simple combination of a null mount and a union mount incurs a
repeatable panic on the third attempt to 'ls' it.

vref used where vget required
at netbsd:vflush
at netbsd:layerfs_root+0x21
at netbsd:union_lookup1+0xa6
at netbsd:union_lookup+0x410
at netbsd:VOP_LOOKUP+0x2e
at netbsd:lookup+0x215
at netbsd:namei+0x110
at netbsd:sys___lstat30+0x58
at netbsd:syscall_plain+0x7e
--- syscall (number 389) ---
>How-To-Repeat:
boot -s
# mount /tmp
# cd /tmp
# mkdir t0 t0/t1 t1 t2
# mount_null t1 t0/t1
# mount_union t2 t0
# ls -R t0
t1
t0/t1:
# ls -R t0
t1
t0/t1:
# ls -R t0
panic: vref used where vget required, vp 0xcb82c7ec
>Fix:
not known