diff options
-rw-r--r-- | sys/sys/vnode.h | 2 | ||||
-rw-r--r-- | sys/vm/vnode_pager.c | 17 |
2 files changed, 0 insertions, 19 deletions
diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h index 72744cd..ddcfd8f 100644 --- a/sys/sys/vnode.h +++ b/sys/sys/vnode.h @@ -232,8 +232,6 @@ struct xvnode { * VI flags are protected by interlock and live in v_iflag * VV flags are protected by the vnode lock and live in v_vflag */ -#define VI_OLOCK 0x0008 /* vnode is locked waiting for an object */ -#define VI_OWANT 0x0010 /* a thread is waiting for VOLOCK */ #define VI_MOUNT 0x0020 /* Mount in progress */ #define VI_AGE 0x0040 /* Insert vnode at head of free list */ #define VI_DOOMED 0x0080 /* This vnode is being recycled */ diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index 6d7bc78..9a13911 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -208,18 +208,6 @@ vnode_pager_alloc(void *handle, vm_ooffset_t size, vm_prot_t prot, ASSERT_VOP_LOCKED(vp, "vnode_pager_alloc"); /* - * Prevent race condition when allocating the object. This - * can happen with NFS vnodes since the nfsnode isn't locked. - */ - VI_LOCK(vp); - while (vp->v_iflag & VI_OLOCK) { - vp->v_iflag |= VI_OWANT; - msleep(vp, VI_MTX(vp), PVM, "vnpobj", 0); - } - vp->v_iflag |= VI_OLOCK; - VI_UNLOCK(vp); - - /* * If the object is being terminated, wait for it to * go away. */ @@ -250,11 +238,6 @@ vnode_pager_alloc(void *handle, vm_ooffset_t size, vm_prot_t prot, } VI_LOCK(vp); vp->v_usecount++; - vp->v_iflag &= ~VI_OLOCK; - if (vp->v_iflag & VI_OWANT) { - vp->v_iflag &= ~VI_OWANT; - wakeup(vp); - } VI_UNLOCK(vp); return (object); } |