diff usr/src/uts/common/fs/zfs/dsl_dataset.c @ 11823:c756cd80d532

6930022 zfs rename of non-shapshot is slower than necessary
author Matthew Ahrens <Matthew.Ahrens@Sun.COM>
date Thu, 25 Feb 2010 14:08:36 -0800
parents 6f890435df16
children 3655f38d3bea
line wrap: on
line diff
--- a/usr/src/uts/common/fs/zfs/dsl_dataset.c	Thu Feb 25 11:56:41 2010 -0800
+++ b/usr/src/uts/common/fs/zfs/dsl_dataset.c	Thu Feb 25 14:08:36 2010 -0800
@@ -2323,17 +2323,8 @@
 			err = dmu_objset_find(oldname, dsl_valid_rename,
 			    &delta, DS_FIND_CHILDREN | DS_FIND_SNAPSHOTS);
 
-		if (!err) {
-			/*
-			 * If there are more than 2 references there may be
-			 * holds hanging around that haven't been cleared
-			 * out yet.
-			 */
-			if (dmu_buf_refcount(dd->dd_dbuf) > 2)
-				txg_wait_synced(dd->dd_pool, 0);
-
+		if (err == 0)
 			err = dsl_dir_rename(dd, newname);
-		}
 		dsl_dir_close(dd, FTAG);
 		return (err);
 	}