NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/43439: mount_null panic: lockdebug_wantlock: locking against myself
>Number: 43439
>Category: kern
>Synopsis: mount_null panic: lockdebug_wantlock: locking against myself
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Jun 09 05:15:00 +0000 2010
>Originator: matthew green
>Release: NetBSD 5.99.30
>Organization:
people's front against (bozotic) www (softwar foundation)
>Environment:
Architecture: amd64
Machine: amd64
>Description:
mounting a r/w nullfs over a r/o nullfs crashes.
my system that has a copy of pkgsrc in /home/current/pkgsrc, where
/home is an FFS (wapbl or not -- in my testing). then i mount this
directory r/o nullfs to /usr/pkgsrc, and then i mount
/home/current/pkgsrc/distfiles on /usr/pkgsrc/distfiles as a r/w
nullfs.
the final mount crashes with this:
login: Reader / writer lock error: lockdebug_wantlock: locking against myself
lock address : 0xffff80004ba43ab0 type : sleep/adaptive
initialized : 0xffffffff805c72af
shared holds : 0 exclusive: 1
shares wanted: 0 exclusive: 1
current cpu : 1 last held: 1
current lwp : 0xffff80004b8b0800 last held: 0xffff80004b8b0800
last locked : 0xffffffff805c4dc6 unlocked : 0xffffffff805c4e3c
owner/count : 0xffff80004b8b0800 flags : 0x0000000000000004
Turnstile chain at 0xffffffff809e9860.
=> No active turnstile for this lock.
panic: LOCKDEBUG
cpu1: Begin traceback...
printf_nolog() at netbsd:printf_nolog+0xbc
cpu1: End traceback...
fatal breakpoint trap in supervisor mode
trap type 1 code 0 rip ffffffff801b9bed cs 8 rflags 246 cr2 7f7ffd472eb0 cpl 0
rsp ffff80004b8f1400
Stopped in pid 437.1 (mount_null) at netbsd:breakpoint+0x5: leave
db{1}> bt
breakpoint() at netbsd:breakpoint+0x5
panic() at netbsd:panic+0x2ba
lockdebug_locked() at netbsd:lockdebug_locked
rw_enter() at netbsd:rw_enter+0x2f1
vlockmgr() at netbsd:vlockmgr+0xdf
VOP_LOCK() at netbsd:VOP_LOCK+0x64
vn_lock() at netbsd:vn_lock+0xd5
cache_lookup() at netbsd:cache_lookup+0x212
ufs_lookup() at netbsd:ufs_lookup+0xc4
VOP_LOOKUP() at netbsd:VOP_LOOKUP+0x80
do_lookup() at netbsd:do_lookup+0x43a
namei() at netbsd:namei+0x276
nullfs_mount() at netbsd:nullfs_mount+0xb9
VFS_MOUNT() at netbsd:VFS_MOUNT+0x34
do_sys_mount() at netbsd:do_sys_mount+0x796
sys___mount50() at netbsd:sys___mount50+0x33
syscall() at netbsd:syscall+0xaa
>How-To-Repeat:
fstab with these three lines:
/dev/wd0e /home ffs rw,log 1 2
/home/current/pkgsrc /usr/pkgsrc null ro,hidden
/home/current/pkgsrc/distfiles /usr/pkgsrc/distfiles null rw,hidden
>Fix:
Home |
Main Index |
Thread Index |
Old Index