svn commit: r352381 - stable/11/sys/ufs/ffs
Konstantin Belousov
kib at FreeBSD.org
Mon Sep 16 06:22:09 UTC 2019
Author: kib
Date: Mon Sep 16 06:22:08 2019
New Revision: 352381
URL: https://svnweb.freebsd.org/changeset/base/352381
Log:
MFC r352058:
Remove some unneeded vfs_busy() calls in SU code.
Modified:
stable/11/sys/ufs/ffs/ffs_softdep.c
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/sys/ufs/ffs/ffs_softdep.c
==============================================================================
--- stable/11/sys/ufs/ffs/ffs_softdep.c Mon Sep 16 06:15:22 2019 (r352380)
+++ stable/11/sys/ufs/ffs/ffs_softdep.c Mon Sep 16 06:22:08 2019 (r352381)
@@ -12429,24 +12429,13 @@ restart:
FREE_LOCK(ump);
if (ffs_vgetf(mp, parentino, LK_NOWAIT | LK_EXCLUSIVE, &pvp,
FFSV_FORCEINSMQ)) {
- error = vfs_busy(mp, MBF_NOWAIT);
- if (error != 0) {
- vfs_ref(mp);
- VOP_UNLOCK(vp, 0);
- error = vfs_busy(mp, 0);
- vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
- vfs_rel(mp);
- if (error != 0)
- return (ENOENT);
- if (vp->v_iflag & VI_DOOMED) {
- vfs_unbusy(mp);
- return (ENOENT);
- }
- }
+ /*
+ * Unmount cannot proceed after unlock because
+ * caller must have called vn_start_write().
+ */
VOP_UNLOCK(vp, 0);
error = ffs_vgetf(mp, parentino, LK_EXCLUSIVE,
&pvp, FFSV_FORCEINSMQ);
- vfs_unbusy(mp);
vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
if (vp->v_iflag & VI_DOOMED) {
if (error == 0)
More information about the svn-src-all
mailing list