svn commit: r351555 - head/sys/kern
Mateusz Guzik
mjg at FreeBSD.org
Tue Aug 27 20:30:57 UTC 2019
Author: mjg
Date: Tue Aug 27 20:30:56 2019
New Revision: 351555
URL: https://svnweb.freebsd.org/changeset/base/351555
Log:
vfs: stop passing LK_INTERLOCK to VOP_UNLOCK
The plan is to drop the flags argument. There is also a temporary bug
now that nullfs ignores the flag.
Reviewed by: kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D21252
Modified:
head/sys/kern/vfs_subr.c
Modified: head/sys/kern/vfs_subr.c
==============================================================================
--- head/sys/kern/vfs_subr.c Tue Aug 27 20:11:45 2019 (r351554)
+++ head/sys/kern/vfs_subr.c Tue Aug 27 20:30:56 2019 (r351555)
@@ -1034,8 +1034,8 @@ vlrureclaim(struct mount *mp, bool reclaim_nc_src, int
(vp->v_iflag & VI_FREE) != 0 ||
(vp->v_object != NULL &&
vp->v_object->resident_page_count > trigger)) {
- VOP_UNLOCK(vp, LK_INTERLOCK);
- vdrop(vp);
+ VOP_UNLOCK(vp, 0);
+ vdropl(vp);
goto next_iter_mntunlocked;
}
KASSERT((vp->v_iflag & VI_DOOMED) == 0,
@@ -1398,7 +1398,8 @@ vtryrecycle(struct vnode *vp)
*/
VI_LOCK(vp);
if (vp->v_usecount) {
- VOP_UNLOCK(vp, LK_INTERLOCK);
+ VOP_UNLOCK(vp, 0);
+ VI_UNLOCK(vp);
vn_finished_write(vnmp);
CTR2(KTR_VFS,
"%s: impossible to recycle, %p is already referenced",
@@ -1409,7 +1410,8 @@ vtryrecycle(struct vnode *vp)
counter_u64_add(recycles_count, 1);
vgonel(vp);
}
- VOP_UNLOCK(vp, LK_INTERLOCK);
+ VOP_UNLOCK(vp, 0);
+ VI_UNLOCK(vp);
vn_finished_write(vnmp);
return (0);
}
More information about the svn-src-all
mailing list