Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 May 2016 18:16:26 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r300427 - in head/sys/fs: cd9660 udf
Message-ID:  <201605221816.u4MIGQDo077479@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Sun May 22 18:16:25 2016
New Revision: 300427
URL: https://svnweb.freebsd.org/changeset/base/300427

Log:
  Remove drop/reacquire of Giant around geom calls for cd9660 and udf.
  
  Sponsored by:	The FreeBSD Foundation
  MFC after:	2 weeks

Modified:
  head/sys/fs/cd9660/cd9660_vfsops.c
  head/sys/fs/udf/udf_vfsops.c

Modified: head/sys/fs/cd9660/cd9660_vfsops.c
==============================================================================
--- head/sys/fs/cd9660/cd9660_vfsops.c	Sun May 22 18:16:04 2016	(r300426)
+++ head/sys/fs/cd9660/cd9660_vfsops.c	Sun May 22 18:16:25 2016	(r300427)
@@ -226,11 +226,9 @@ iso_mountfs(devvp, mp)
 
 	dev = devvp->v_rdev;
 	dev_ref(dev);
-	DROP_GIANT();
 	g_topology_lock();
 	error = g_vfs_open(devvp, &cp, "cd9660", 0);
 	g_topology_unlock();
-	PICKUP_GIANT();
 	VOP_UNLOCK(devvp, 0);
 	if (error)
 		goto out;
@@ -481,11 +479,9 @@ out:
 	if (supbp != NULL)
 		brelse(supbp);
 	if (cp != NULL) {
-		DROP_GIANT();
 		g_topology_lock();
 		g_vfs_close(cp);
 		g_topology_unlock();
-		PICKUP_GIANT();
 	}
 	if (isomp) {
 		free(isomp, M_ISOFSMNT);
@@ -519,11 +515,9 @@ cd9660_unmount(mp, mntflags)
 		if (isomp->im_l2d)
 			cd9660_iconv->close(isomp->im_l2d);
 	}
-	DROP_GIANT();
 	g_topology_lock();
 	g_vfs_close(isomp->im_cp);
 	g_topology_unlock();
-	PICKUP_GIANT();
 	vrele(isomp->im_devvp);
 	dev_rel(isomp->im_dev);
 	free(isomp, M_ISOFSMNT);

Modified: head/sys/fs/udf/udf_vfsops.c
==============================================================================
--- head/sys/fs/udf/udf_vfsops.c	Sun May 22 18:16:04 2016	(r300426)
+++ head/sys/fs/udf/udf_vfsops.c	Sun May 22 18:16:25 2016	(r300427)
@@ -325,11 +325,9 @@ udf_mountfs(struct vnode *devvp, struct 
 
 	dev = devvp->v_rdev;
 	dev_ref(dev);
-	DROP_GIANT();
 	g_topology_lock();
 	error = g_vfs_open(devvp, &cp, "udf", 0);
 	g_topology_unlock();
-	PICKUP_GIANT();
 	VOP_UNLOCK(devvp, 0);
 	if (error)
 		goto bail;
@@ -500,11 +498,9 @@ bail:
 	if (bp != NULL)
 		brelse(bp);
 	if (cp != NULL) {
-		DROP_GIANT();
 		g_topology_lock();
 		g_vfs_close(cp);
 		g_topology_unlock();
-		PICKUP_GIANT();
 	}
 	dev_rel(dev);
 	return error;
@@ -533,11 +529,9 @@ udf_unmount(struct mount *mp, int mntfla
 #endif
 	}
 
-	DROP_GIANT();
 	g_topology_lock();
 	g_vfs_close(udfmp->im_cp);
 	g_topology_unlock();
-	PICKUP_GIANT();
 	vrele(udfmp->im_devvp);
 	dev_rel(udfmp->im_dev);
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201605221816.u4MIGQDo077479>