diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index f631508..5453772 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -977,17 +977,12 @@ vn_start_write(vp, mpp, flags) while ((mp->mnt_kern_flag & MNTK_SUSPEND) != 0) { if (flags & V_NOWAIT) { error = EWOULDBLOCK; - if (vp != NULL) - *mpp = NULL; goto unlock; } error = msleep(&mp->mnt_flag, MNT_MTX(mp), (PUSER - 1) | (flags & PCATCH), "suspfs", 0); - if (error) { - if (vp != NULL) - *mpp = NULL; + if (error) goto unlock; - } } } if (flags & V_XSLEEP) @@ -1051,8 +1046,6 @@ vn_start_secondary_write(vp, mpp, flags) if (flags & V_NOWAIT) { MNT_REL(mp); MNT_IUNLOCK(mp); - if (vp != NULL) - *mpp = NULL; return (EWOULDBLOCK); } /* @@ -1063,8 +1056,6 @@ vn_start_secondary_write(vp, mpp, flags) vfs_rel(mp); if (error == 0) goto retry; - if (vp != NULL) - *mpp = NULL; return (error); } diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c index 380a920..046ba2a 100644 --- a/sys/vm/vm_pageout.c +++ b/sys/vm/vm_pageout.c @@ -944,8 +944,7 @@ rescan0: vp = object->handle; if (vp->v_type == VREG && vn_start_write(vp, &mp, V_NOWAIT) != 0) { - KASSERT(mp == NULL, - ("vm_pageout_scan: mp != NULL")); + mp = NULL; ++pageout_lock_miss; if (object->flags & OBJ_MIGHTBEDIRTY) vnodes_skipped++;