diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 7e69cdba841..94baa5add2d 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -90,6 +90,7 @@ static void buf_daemon __P((void)); * but the code is intricate enough already. */ vm_page_t bogus_page; +int vmiodirenable = FALSE; int runningbufspace; static vm_offset_t bogus_offset; @@ -137,6 +138,8 @@ SYSCTL_INT(_vfs, OID_AUTO, getnewbufcalls, CTLFLAG_RW, &getnewbufcalls, 0, ""); SYSCTL_INT(_vfs, OID_AUTO, getnewbufrestarts, CTLFLAG_RW, &getnewbufrestarts, 0, ""); +SYSCTL_INT(_vfs, OID_AUTO, vmiodirenable, CTLFLAG_RW, + &vmiodirenable, 0, ""); SYSCTL_INT(_vfs, OID_AUTO, bufdefragcnt, CTLFLAG_RW, &bufdefragcnt, 0, ""); SYSCTL_INT(_vfs, OID_AUTO, buffreekvacnt, CTLFLAG_RW, diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 46c97dec840..b4219025257 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -83,10 +83,6 @@ static void vclean __P((struct vnode *vp, int flags, struct proc *p)); static unsigned long numvnodes; SYSCTL_LONG(_debug, OID_AUTO, numvnodes, CTLFLAG_RD, &numvnodes, 0, ""); -static int vmiodirenable = FALSE; -SYSCTL_INT(_vfs, OID_AUTO, vmiodirenable, CTLFLAG_RW, - &vmiodirenable, 0, ""); - /* * Conversion tables for conversion from vnode types to inode formats * and back. @@ -2382,9 +2378,6 @@ loop: if (vp->v_flag & VXLOCK) /* XXX: what if MNT_WAIT? */ continue; - if (vp->v_flag & VNOSYNC) /* unlinked, skip it */ - continue; - if (flags != MNT_WAIT) { if (VOP_GETVOBJECT(vp, &obj) != 0 || (obj->flags & OBJ_MIGHTBEDIRTY) == 0) @@ -2793,22 +2786,6 @@ vn_isdisk(vp, errp) return (1); } -/* - * Check if a vnode should be done with VMIO. - */ -int -vn_canvmio(vp) - struct vnode *vp; -{ - if (!vp) - return (FALSE); - if (vp->v_type == VREG || (vmiodirenable && vp->v_type == VDIR)) - return (TRUE); - if (vn_isdisk(vp, NULL)) - return TRUE; - return FALSE; -} - /* * Free data allocated by namei(); see namei(9) for details. */