[Midnightbsd-cvs] src [8535] trunk/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c: gfs_file_inactive: replace bad code with ugly code.

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Mon Sep 19 09:50:42 EDT 2016


Revision: 8535
          http://svnweb.midnightbsd.org/src/?rev=8535
Author:   laffer1
Date:     2016-09-19 09:50:42 -0400 (Mon, 19 Sep 2016)
Log Message:
-----------
gfs_file_inactive: replace bad code with ugly code.

Modified Paths:
--------------
    trunk/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c

Modified: trunk/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c
===================================================================
--- trunk/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c	2016-09-19 13:49:27 UTC (rev 8534)
+++ trunk/sys/cddl/contrib/opensolaris/uts/common/fs/gfs.c	2016-09-19 13:50:42 UTC (rev 8535)
@@ -665,8 +665,10 @@
 	ge = NULL;
 
 found:
+#ifdef TODO
 	if (vp->v_flag & V_XATTRDIR)
 		VI_LOCK(fp->gfs_parent);
+#endif
 	VI_LOCK(vp);
 	/*
 	 * Really remove this vnode
@@ -687,16 +689,17 @@
 	if (fp->gfs_parent) {
 		if (dp)
 			gfs_dir_unlock(dp);
-		VI_LOCK(fp->gfs_parent);
-		fp->gfs_parent->v_usecount--;
-		VI_UNLOCK(fp->gfs_parent);
+		VOP_UNLOCK(vp, 0);
+		VN_RELE(fp->gfs_parent);
+		vn_lock(vp, LK_EXCLUSIVE | LK_RETRY);
 	} else {
 		ASSERT(vp->v_vfsp != NULL);
 		VFS_RELE(vp->v_vfsp);
 	}
+#ifdef TODO
 	if (vp->v_flag & V_XATTRDIR)
 		VI_UNLOCK(fp->gfs_parent);
-
+#endif
 	return (data);
 }
 



More information about the Midnightbsd-cvs mailing list