NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
re: kern/43439: mount_null panic: lockdebug_wantlock: locking against myself
The following reply was made to PR kern/43439; it has been noted by GNATS.
From: matthew green <mrg%eterna.com.au@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: kern-bug-people%netbsd.org@localhost, gnats-admin%netbsd.org@localhost,
netbsd-bugs%netbsd.org@localhost
Subject: re: kern/43439: mount_null panic: lockdebug_wantlock: locking against
myself
Date: Wed, 09 Jun 2010 15:28:31 +1000
> 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
these addresses work out to be:
0xffffffff805c72af is in vnalloc (/usr/src/sys/kern/vfs_subr.c:723).
718 if (mp != NULL) {
719 vp->v_mount = mp;
720 vp->v_type = VBAD;
721 vp->v_iflag = VI_MARKER;
722 } else {
723 rw_init(&vp->v_lock.vl_lock);
724 }
725
726 return vp;
727 }
0xffffffff805c4dc6 is in vlockmgr (/usr/src/sys/kern/vfs_subr.c:2945).
2940 }
2941 rw_enter(&vl->vl_lock, RW_READER);
2942 return 0;
2943
2944 case LK_EXCLUSIVE:
2945 if (rw_tryenter(&vl->vl_lock, RW_WRITER)) {
2946 return 0;
2947 }
2948 if ((vl->vl_canrecurse || (flags & LK_CANRECURSE) !=
0) &&
2949 rw_write_held(&vl->vl_lock)) {
0xffffffff805c4e3c is in vlockmgr (/usr/src/sys/kern/vfs_subr.c:2965).
2960 if (vl->vl_recursecnt != 0) {
2961 KASSERT(rw_write_held(&vl->vl_lock));
2962 vl->vl_recursecnt--;
2963 return 0;
2964 }
2965 rw_exit(&vl->vl_lock);
2966 return 0;
2967
2968 default:
2969 panic("vlockmgr: flags %x", flags);
Home |
Main Index |
Thread Index |
Old Index