svn commit: r292298 - in projects/zfsd/head/tests/sys/cddl/zfs: include tests tests/bootfs tests/cache tests/cachefile tests/cli_root/zpool_add tests/cli_root/zpool_clear tests/cli_root/zpool_creat...

Alan Somers asomers at FreeBSD.org
Wed Dec 16 00:10:02 UTC 2015


Author: asomers
Date: Wed Dec 16 00:09:57 2015
New Revision: 292298
URL: https://svnweb.freebsd.org/changeset/base/292298

Log:
  Misc ZFS test suite fixes
  
  tests/sys/cddl/zfs/tests/zvol/zvol_misc/zvol_misc_008_pos.ksh
  	Refactor asserts for each stage into new functions.  Add a few extra
  	asserts.
  
  tests/sys/cddl/zfs/tests/Makefile
  	Add 'testids' phony target to identify all tests by id.
  
  tests/sys/cddl/zfs/tests/bootfs/bootfs_001_pos.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_002_neg.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_003_pos.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_004_neg.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_005_neg.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_006_pos.ksh
  tests/sys/cddl/zfs/tests/bootfs/bootfs_009_neg.ksh
  tests/sys/cddl/zfs/tests/cache/cache.kshlib
  tests/sys/cddl/zfs/tests/cache/cleanup.ksh
  tests/sys/cddl/zfs/tests/cachefile/cachefile_001_pos.ksh
  tests/sys/cddl/zfs/tests/cachefile/cachefile_002_pos.ksh
  tests/sys/cddl/zfs/tests/cachefile/cachefile_003_pos.ksh
  tests/sys/cddl/zfs/tests/cachefile/cachefile_004_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_001_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_004_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_015_neg.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_016_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_018_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_021_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_022_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_023_neg.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_001_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_002_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_001_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_002_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_003_neg.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_remove/zpool_remove_002_pos.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_002_neg.ksh
  tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_003_neg.ksh
  tests/sys/cddl/zfs/tests/cli_user/misc/cleanup.ksh
  tests/sys/cddl/zfs/tests/pool_names/pool_names_001_pos.ksh
  tests/sys/cddl/zfs/tests/pool_names/pool_names_002_neg.ksh
  tests/sys/cddl/zfs/tests/poolversion/cleanup.ksh
  tests/sys/cddl/zfs/tests/userquota/userquota_002_pos.ksh
  	Force destroy pools in cleanup routines.  Each test should make a
  	best effort not to affect other tests.
  
  	Adopt unconditional use of destroy_pool() where appropriate.  Since
  	this library call already performs a poolexists(), and is not fatal
  	if the pool doesn't exist, it might as well be unconditionally
  	called.
  
  Submitted by:	Will
  Sponsored by:	Spectra Logic Corp

Modified:
  projects/zfsd/head/tests/sys/cddl/zfs/include/libtest.kshlib
  projects/zfsd/head/tests/sys/cddl/zfs/tests/Makefile
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_002_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_003_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_004_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_005_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_006_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_009_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cache.kshlib
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cleanup.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_002_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_003_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_004_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add.kshlib
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add_006_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_004_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_015_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_016_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_018_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_021_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_022_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_023_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_002_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_002_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_003_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_remove/zpool_remove_002_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_002_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_003_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_user/misc/cleanup.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_001_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_002_neg.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/poolversion/cleanup.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/userquota/userquota_002_pos.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/write_dirs/cleanup.ksh
  projects/zfsd/head/tests/sys/cddl/zfs/tests/zvol/zvol_misc/zvol_misc_008_pos.ksh

Modified: projects/zfsd/head/tests/sys/cddl/zfs/include/libtest.kshlib
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/include/libtest.kshlib	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/include/libtest.kshlib	Wed Dec 16 00:09:57 2015	(r292298)
@@ -661,6 +661,20 @@ function set_partition #<slice_num> <sli
 	return 0
 }
 
+function get_disk_size #<disk>
+{
+	typeset disk=$1
+	diskinfo da0 | awk '{print $3}'
+}
+
+function get_available_disk_size #<disk>
+{
+	typeset disk=$1
+	raw_size=`get_disk_size $disk`
+	(( available_size = raw_size * 95 / 100 ))
+	echo $available_size
+}
+
 #
 # Get the end cyl of the given slice
 # #TODO: fix this to be GPT-compatible if we want to use the SMI WRAPPER.  This
@@ -1133,7 +1147,7 @@ function destroy_pool #pool
 			[[ -d $mtpt ]] && \
 				log_must $RM -rf $mtpt
 		else
-			log_note "Pool not exist. ($pool)"
+			log_note "Pool $pool does not exist, skipping destroy."
 			return 1
 		fi
 	fi

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/Makefile
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/Makefile	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/Makefile	Wed Dec 16 00:09:57 2015	(r292298)
@@ -81,4 +81,13 @@ TESTS_SUBDIRS+=	zil
 TESTS_SUBDIRS+=	zvol
 TESTS_SUBDIRS+=	zvol_thrash
 
+# This is primarily useful for identifying which test a testid corresponds to.
+# Sometimes all you might have is a pool name like 'testpool.1316'.
+testids:
+	for i in `find ${.CURDIR} -name '*.sh' | xargs grep '^atf_test_case '|awk '{print $$2}'`; do \
+		echo "$${i}: $$(echo $$i | cksum -o 2 | cut -d" " -f1)"; \
+	done
+
+.PHONY: testids
+
 .include <bsd.test.mk>

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -56,17 +56,7 @@
 verify_runnable "global"
 
 function cleanup {
-	if snapexists $TESTPOOL/$FS at snap ; then
-		log_must $ZFS destroy $TESTPOOL/$FS at snap
-	fi
-	
- 	if datasetexists $TESTPOOL/$FS ; then 
-		log_must $ZFS destroy $TESTPOOL/$FS
-	fi
-
-	if poolexists $TESTPOOL ; then
-		log_must $ZPOOL destroy $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 
 	if [[ -f $VDEV ]]; then
 		log_must $RM -f $VDEV

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_002_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_002_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_002_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -57,14 +57,7 @@
 verify_runnable "global"
 
 function cleanup {
-	if datasetexists $TESTPOOL/vol
-	then
-		log_must $ZFS destroy $TESTPOOL/vol
-	fi
-	if poolexists $TESTPOOL
-	then
-		log_must $ZPOOL destroy $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 }
 
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_003_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_003_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_003_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -60,9 +60,11 @@ set -A pools "pool.${TESTCASE_ID}" "pool
 typeset VDEV=$TMPDIR/bootfs_003.${TESTCASE_ID}.dat
 
 function cleanup {
-	if poolexists $POOL ; then
-		log_must $ZPOOL destroy $POOL
-	fi
+	typeset -i=0
+	while [ $i -lt "${#pools[@]}" ]; do
+		destroy_pool ${pools[$i]}
+		i=$(( $i + 1 ))
+	done
 	$RM $VDEV
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_004_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_004_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_004_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -61,9 +61,11 @@ set -A pools "pool//${TESTCASE_ID}" "poo
 typeset VDEV=$TMPDIR/bootfs_004.${TESTCASE_ID}.dat
 
 function cleanup {
-	if poolexists $POOL; then
-		log_must $ZPOOL destroy $POOL
-	fi
+	typeset -i=0
+	while [ $i -lt "${#pools[@]}" ]; do
+		destroy_pool ${pools[$i]}
+		i=$(( $i + 1 ))
+	done
 	$RM $VDEV
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_005_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_005_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_005_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -68,13 +68,10 @@ function cleanup {
 		pool_name=$($ENV| $GREP "ZPOOL_VERSION_${config}_NAME"\
                 	| $AWK -F= '{print $2}')
 		if poolexists $pool_name; then
-			log_must $ZPOOL destroy $pool_name
+			log_must $ZPOOL destroy -f $pool_name
 		fi
 	done
-	
-	if poolexists $TESTPOOL ; then
-		log_must $ZPOOL destroy $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 }
 
 $ZPOOL set 2>&1 | $GREP bootfs > /dev/null

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_006_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_006_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_006_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -100,10 +100,7 @@ function verify_no_bootfs { # $POOL
 }
 
 function cleanup {
-	if poolexists $TESTPOOL
-	then
-		log_must $ZPOOL destroy $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 	log_must $RM $VDEV1 $VDEV2 $VDEV3 $VDEV4
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_009_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_009_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/bootfs/bootfs_009_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -57,9 +57,7 @@
 verify_runnable "global"
 
 function cleanup {
-	if poolexists $TESTPOOL ; then
-		log_must $ZPOOL destroy $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 }
 
 $ZPOOL set 2>&1 | $GREP bootfs > /dev/null

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cache.kshlib
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cache.kshlib	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cache.kshlib	Wed Dec 16 00:09:57 2015	(r292298)
@@ -30,12 +30,8 @@
 
 function cleanup
 {
-	if datasetexists $TESTPOOL ; then
-		log_must $ZPOOL destroy -f $TESTPOOL
-	fi
-	if datasetexists $TESTPOOL2 ; then
-		log_must $ZPOOL destroy -f $TESTPOOL2
-	fi
+	destroy_pool $TESTPOOL
+	destroy_pool $TESTPOOL2
 }
 
 #

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cleanup.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cleanup.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cache/cleanup.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -35,12 +35,7 @@ if ! verify_cache_support ; then
 	log_unsupported "This system doesn't support cache device"
 fi
 
-if datasetexists $TESTPOOL ; then
-	log_must $ZPOOL destroy -f $TESTPOOL
-fi
-if datasetexists $TESTPOOL2 ; then
-	log_must $ZPOOL destroy -f $TESTPOOL2
-fi
+cleanup
 if [[ -d $VDIR ]]; then
 	log_must $RM -rf $VDIR
 fi

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -62,9 +62,7 @@ function cleanup
 {
 	typeset file
 
-	if poolexists $TESTPOOL ; then
-                destroy_pool $TESTPOOL
-        fi
+	destroy_pool $TESTPOOL
 	for file in $CPATH1 $CPATH2 ; do
 		if [[ -f $file ]] ; then
 			log_must $RM $file

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_002_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_002_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_002_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -62,9 +62,7 @@
 
 function cleanup
 {
-	if poolexists $TESTPOOL ; then
-                destroy_pool $TESTPOOL
-        fi
+	destroy_pool $TESTPOOL
 }
 
 verify_runnable "global"

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_003_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_003_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_003_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -61,9 +61,7 @@ function cleanup
 {
 	typeset file
 
-	if poolexists $TESTPOOL ; then
-		destroy_pool $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 
         for file in $CPATH1 $CPATH2 ; do
                 if [[ -f $file ]] ; then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_004_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_004_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cachefile/cachefile_004_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -63,8 +63,8 @@ verify_runnable "global"
 
 function cleanup
 {
-	poolexists $TESTPOOL1 && destroy_pool $TESTPOOL1
-	poolexists $TESTPOOL2 && destroy_pool $TESTPOOL2
+	destroy_pool $TESTPOOL1
+	destroy_pool $TESTPOOL2
 
 	mntpnt=$(get_prop mountpoint $TESTPOOL)
 	typeset -i i=0
@@ -75,9 +75,7 @@ function cleanup
 		((i += 1))
 	done
 
-	if poolexists $TESTPOOL ; then
-		destroy_pool $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 
 	for file in $CPATH1 $CPATH2 ; do
 		if [[ -f $file ]] ; then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add.kshlib
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add.kshlib	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add.kshlib	Wed Dec 16 00:09:57 2015	(r292298)
@@ -139,14 +139,13 @@ function save_dump_dev
 #
 function partition_cleanup
 {
-
-        if [[ -n $DISK ]]; then
-                partition_disk $SIZE $DISK 7
-        else
-                typeset disk=""
-                for disk in $DISK0 $DISK1; do
-                        partition_disk $SIZE $disk 7
-                done
-        fi
-
+	log_note "Cleaning up partitions..."
+	if [[ -n $DISK ]]; then
+		partition_disk $SIZE $DISK 7
+	else
+		typeset disk=""
+		for disk in $DISK0 $DISK1; do
+			partition_disk $SIZE $disk 7
+		done
+	fi
 }

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add_006_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add_006_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_add/zpool_add_006_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -90,20 +90,14 @@ function setup_vdevs #<disk> 
 	typeset -i largest_num=0
 	typeset -i slicesize=0
 	typeset vdev=""
-	
 
-	#
-	# Get disk size for zfs filesystem
-	#
-	create_pool foo $disk
-	log_must $ZFS create foo/fs
-	typeset -li fs_size=$(get_prop "available" foo/fs)
-	destroy_pool foo
+	fs_size=$(get_available_disk_size $disk)
 
-	(( largest_num = fs_size / (1024 * 1024 * 64) )) #64m is the minmum size for pool
+	# 64M is the minimum size for the pool
+	(( largest_num = fs_size / (1024 * 1024 * 64) ))
 	if (( largest_num < $VDEVS_NUM )); then
-		(( vdevs_num=largest_num - largest_num/20 )) # minus $largest_num/20 to leave 
-							      #5% space for metadata.
+		# Minus $largest_num/20 to leave 5% space for metadata.
+		(( vdevs_num=largest_num - largest_num/20 ))
 		file_size=64
 		vdev=$disk
 	else
@@ -112,8 +106,8 @@ function setup_vdevs #<disk> 
 		if (( file_size > FILE_SIZE )); then
 			file_size=$FILE_SIZE
 		fi
-		(( slice_size = file_size * (vdevs_num + vdevs_num/20) )) # plus $vdevs_num/20 to provide 
-								#enough space for metadata. 
+		# Plus $vdevs_num/20 to provide enough space for metadata.
+		(( slice_size = file_size * (vdevs_num + vdevs_num/20) ))
 		wipe_partition_table $disk					
 		set_partition 0 "" ${slice_size}m $disk
 		vdev=${disk}p1

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -57,8 +57,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        poolexists $TESTPOOL1 && \
-                log_must $ZPOOL destroy -f $TESTPOOL1
+	destroy_pool $TESTPOOL1
 
         for file in `$LS $TMPDIR/file.*`; do
 		log_must $RM -f $file

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_004_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_004_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_clear/zpool_clear_004_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -61,8 +61,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        poolexists $TESTPOOL1 && \
-                log_must $ZPOOL destroy -f $TESTPOOL1
+	destroy_pool $TESTPOOL1
 
         for file in `$LS $TMPDIR/file.*`; do
 		log_must $RM -f $file
@@ -98,7 +97,5 @@ log_note "'zpool clear' clears leaf-devi
 log_must $ZPOOL create -f $TESTPOOL1 $devlist
 log_must $ZPOOL replace $TESTPOOL1 $VDEV1 $SDEV
 log_must $ZPOOL clear $TESTPOOL1 "spare-0"
-	
-log_must $ZPOOL destroy $TESTPOOL1
 
 log_pass "'zpool clear' works on spare vdevs"

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_015_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_015_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_015_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -68,12 +68,8 @@ function cleanup
 		fi
 	fi
 
-	for pool in $TESTPOOL1 $TESTPOOL; do
-		if poolexists $pool; then
-			destroy_pool $pool
-		fi
-	done
-
+	destroy_pool $TESTPOOL1
+	destroy_pool $TESTPOOL
 }
 
 if [[ -n $DISK ]]; then
@@ -101,6 +97,5 @@ done
 # cleanup
 log_must $SWAP -d /dev/zvol/${vol_name}
 log_must $ZFS destroy $vol_name
-log_must $ZPOOL destroy $TESTPOOL
 
 log_pass "'zpool create' passed as expected with inapplicable scenario."

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_016_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_016_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_016_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -58,9 +58,7 @@ verify_runnable "global"
 
 function cleanup
 {
-	if poolexists $TESTPOOL; then
-		destroy_pool $TESTPOOL
-	fi
+	destroy_pool $TESTPOOL
 
 	#recover swap devices
 	FSTAB=$TMPDIR/fstab_${TESTCASE_ID}
@@ -96,6 +94,5 @@ for sdisk in $swap_disks; do
 done
 
 log_must $ZPOOL create $TESTPOOL $pool_dev
-log_must $ZPOOL destroy $TESTPOOL
 
 log_pass "'zpool create' passed as expected with applicable scenario."

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_018_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_018_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_018_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -58,9 +58,7 @@
 
 function cleanup
 {
-	if poolexists $TESTPOOL ; then
-                destroy_pool $TESTPOOL
-        fi
+	destroy_pool $TESTPOOL
 
 	if [[ -f $CPATH ]] ; then
 		log_must $RM $CPATH
@@ -97,29 +95,24 @@ do
 		$ZPOOL get all $TESTPOOL
 		log_fail "Pool was created without setting the ${props[$i]} property"
 	fi
-	log_must $ZPOOL destroy $TESTPOOL
+	destroy_pool $TESTPOOL
         (( i = i + 1 ))
 done
 
-# Destroy our pool
-if poolexists $TESTPOOL ; then
-                destroy_pool $TESTPOOL
-fi
-
 # pick two properties, and verify we can create with those as well
 log_must $ZPOOL create -o delegation=off -o cachefile=$CPATH $TESTPOOL $disk
 RESULT=$(get_pool_prop delegation $TESTPOOL)
 if [[ $RESULT != off ]]
 then
-		$ZPOOL get all $TESTPOOL
-		log_fail "Pool created without the delegation prop."
+	$ZPOOL get all $TESTPOOL
+	log_fail "Pool created without the delegation prop."
 fi
 
 RESULT=$(get_pool_prop cachefile $TESTPOOL)
 if [[ $RESULT != $CPATH ]]
 then
-		$ZPOOL get all $TESTPOOL
-		log_fail "Pool created without the cachefile prop."
+	$ZPOOL get all $TESTPOOL
+	log_fail "Pool created without the cachefile prop."
 fi
 
 log_pass "zpool create can create pools with specified properties"

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_021_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_021_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_021_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -63,7 +63,7 @@ verify_runnable "global"
 
 function cleanup
 {
-	datasetexists $TESTPOOL && destroy_pool $TESTPOOL
+	destroy_pool $TESTPOOL
 }
 
 log_onexit cleanup
@@ -95,7 +95,7 @@ while (( $i < ${#RW_FS_PROP[*]} )); do 
 		log_fail "zpool create $TESTPOOL fail."
 	propertycheck $TESTPOOL ${RW_FS_PROP[i]} || \
 		log_fail "${RW_FS_PROP[i]} is failed to set."
-	log_must $ZPOOL destroy $TESTPOOL
+	destroy_pool $TESTPOOL
 	(( i = i + 1 ))
 done
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_022_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_022_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_022_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -63,7 +63,7 @@ verify_runnable "global"
 
 function cleanup
 {
-	datasetexists $TESTPOOL && log_must $ZPOOL destroy $TESTPOOL
+	destroy_pool $TESTPOOL
 }
 
 log_onexit cleanup

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_023_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_023_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_create/zpool_create_023_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -60,7 +60,7 @@ verify_runnable "global"
 
 function cleanup
 {
-	datasetexists $TESTPOOL && log_must $ZPOOL destroy $TESTPOOL
+	destroy_pool $TESTPOOL
 }
 
 log_onexit cleanup

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -56,15 +56,9 @@ verify_runnable "global"
 
 function cleanup
 {
-	poolexists $TESTPOOL2 && destroy_pool $TESTPOOL2
-	datasetexists $TESTPOOL1/$TESTVOL && \
-		log_must $ZFS destroy -f $TESTPOOL1/$TESTVOL
-
-	typeset pool
-	for pool in $TESTPOOL1 $TESTPOOL; do
-		poolexists $pool && destroy_pool $pool
-	done
-
+	destroy_pool $TESTPOOL2
+	destroy_pool $TESTPOOL1
+	destroy_pool $TESTPOOL
 	wipe_partition_table $DISK
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_002_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_002_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_destroy/zpool_destroy_002_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -68,14 +68,7 @@ function cleanup
 		log_must $RM -rf $TESTDIR
 	fi
 
-	typeset -i i=0
-	while (( $i < ${#datasets[*]} )); do
-		datasetexists ${datasets[i]} && \
-			log_must $ZFS destroy ${datasets[i]}
-		(( i = i + 1 ))	
-	done
-
-	poolexists $TESTPOOL && destroy_pool $TESTPOOL
+	destroy_pool $TESTPOOL
 }
 
 set -A datasets "$TESTPOOL/$TESTFS" "$TESTPOOL/$TESTCTR/$TESTFS1" \

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -61,9 +61,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        if poolexists $TESTPOOL1; then
-                log_must $ZPOOL destroy $TESTPOOL1
-        fi
+	destroy_pool $TESTPOOL1
 
 	for i in 1 2 3; do
 		if datasetexists $VFS/vol$i; then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_002_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_002_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_002_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -62,9 +62,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        if poolexists $TESTPOOL1; then
-                log_must $ZPOOL destroy $TESTPOOL1
-        fi
+	destroy_pool $TESTPOOL1
 
 	for i in 1 2 3; do
 		if datasetexists $VFS/vol$i; then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_003_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_003_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_expand/zpool_expand_003_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -61,9 +61,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        if poolexists $TESTPOOL1; then
-                log_must $ZPOOL destroy $TESTPOOL1
-        fi
+	destroy_pool $TESTPOOL1
 
 	for i in 1 2 3; do
 		if datasetexists $VFS/vol$i; then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_013_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -82,9 +82,7 @@ function cleanup
 	if [[ -z $POOL_NAME ]]; then
 		return 1
 	fi
-	if poolexists $POOL_NAME; then
-		log_must $ZPOOL destroy $POOL_NAME
-	fi
+	destroy_pool $POOL_NAME
 	for file in $POOL_FILES; do
 		if [[ -e /$TESTPOOL/$file ]]; then
 			$RM /$TESTPOOL/$file

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_remove/zpool_remove_002_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_remove/zpool_remove_002_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_remove/zpool_remove_002_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -54,9 +54,7 @@
 
 function cleanup
 {
-	if poolexists $TESTPOOL; then
-		destroy_pool $TESTPOOL
-	fi       	
+	destroy_pool $TESTPOOL
 }
 
 log_onexit cleanup

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_002_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_002_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_002_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -59,8 +59,7 @@ verify_runnable "global"
 # note to self - need to make sure there isn't a pool called bootfs
 # before running this test...
 function cleanup {
-
-	$ZPOOL destroy bootfs
+	destroy_pool bootfs
 	$RM $TMPDIR/zpool_set_002.${TESTCASE_ID}.dat
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_003_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_003_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_root/zpool_set/zpool_set_003_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -57,7 +57,7 @@ verify_runnable "global"
 
 function cleanup
 {
-        $ZPOOL destroy $TESTPOOL
+	destroy_pool $TESTPOOL
         $RM $TMPDIR/zpool_set_003.${TESTCASE_ID}.dat
 }
 

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_user/misc/cleanup.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_user/misc/cleanup.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/cli_user/misc/cleanup.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -29,15 +29,8 @@
 
 . $STF_SUITE/include/libtest.kshlib
 
-if poolexists $TESTPOOL.virt
-then
-	log_must $ZPOOL destroy $TESTPOOL.virt
-fi
-
-if poolexists v1-pool
-then
-	log_must $ZPOOL destroy v1-pool
-fi
+destroy_pool $TESTPOOL.virt
+destroy_pool v1-pool
 
 if [[ -f $TMPDIR/zfstest_datastream.dat ]]
 then

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_001_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_001_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_001_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -62,9 +62,7 @@ log_assert "Ensure that pool names can u
 
 function cleanup
 {
-	if [[ -n $name ]] && poolexists $name ; then
-		log_must $ZPOOL destroy $name
-	fi
+	[[ -n "$name" ]] && destroy_pool $name
 
 	if [[ -d $TESTDIR ]]; then
 		log_must $RM -rf $TESTDIR

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_002_neg.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_002_neg.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/pool_names/pool_names_002_neg.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -64,9 +64,7 @@ POOLNAME=""
 
 function cleanup
 {
-	if poolexists $POOLNAME; then
-		log_must $ZPOOL destroy $POOLNAME
-	fi
+	destroy_pool $POOLNAME
 
 	if [[ -d $TESTDIR ]]; then
 		log_must $RM -rf $TESTDIR

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/poolversion/cleanup.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/poolversion/cleanup.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/poolversion/cleanup.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -37,7 +37,7 @@ then
 	log_unsupported "zpool version property not supported on this system."
 fi
 
-log_must $ZPOOL destroy $TESTPOOL
-log_must $ZPOOL destroy $TESTPOOL2
+destroy_pool $TESTPOOL
+destroy_pool $TESTPOOL2
 
 default_cleanup

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/userquota/userquota_002_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/userquota/userquota_002_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/userquota/userquota_002_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -57,9 +57,7 @@ verify_runnable "global"
 
 function cleanup
 {
-	if poolexists $TESTPOOL1; then
-		log_must $ZPOOL destroy $TESTPOOL1
-	fi
+	destroy_pool $TESTPOOL1
 
 	if [[ -f $pool_vdev ]]; then
 		$RM -f $pool_vdev
@@ -75,9 +73,7 @@ typeset pool_vdev=$TMPDIR/pool_dev.${TES
 
 log_must $MKFILE 500m $pool_vdev
 
-if poolexists $TESTPOOL1; then
-	$ZPOOL destroy $TESTPOOL1
-fi
+destroy_pool $TESTPOOL1
 
 log_must $ZPOOL create -O userquota@$QUSER1=$UQUOTA_SIZE \
 	-O groupquota@$QGROUP=$GQUOTA_SIZE $TESTPOOL1 $pool_vdev

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/write_dirs/cleanup.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/write_dirs/cleanup.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/write_dirs/cleanup.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -29,7 +29,7 @@
 
 . $STF_SUITE/include/libtest.kshlib
 
-log_must $ZPOOL destroy $TESTPOOL
+destroy_pool $TESTPOOL
 log_must wipe_partition_table $DISKS
 log_must $RM -rf $TESTDIR
 log_pass

Modified: projects/zfsd/head/tests/sys/cddl/zfs/tests/zvol/zvol_misc/zvol_misc_008_pos.ksh
==============================================================================
--- projects/zfsd/head/tests/sys/cddl/zfs/tests/zvol/zvol_misc/zvol_misc_008_pos.ksh	Wed Dec 16 00:00:57 2015	(r292297)
+++ projects/zfsd/head/tests/sys/cddl/zfs/tests/zvol/zvol_misc/zvol_misc_008_pos.ksh	Wed Dec 16 00:09:57 2015	(r292298)
@@ -94,6 +94,20 @@ function root_setup
 	done
 }
 
+function test_exists
+{
+	for zvolds in $*; do
+		log_must test -c /dev/zvol/${zvolds}
+	done
+}
+
+function test_notexists
+{
+	for zvolds in $*; do
+		log_mustnot test -e /dev/zvol/${zvolds}
+	done
+}
+
 typeset -i i=0
 while (( i != NUM_ITERATIONS )); do
 	root=${ROOTPREFIX}_iter${i}
@@ -101,57 +115,42 @@ while (( i != NUM_ITERATIONS )); do
 	root_setup $root
 	log_must $ZFS snapshot -r $root at snap
 	log_must $ZFS clone $root/vol0 at snap $root/vol1
-	log_must test -c /dev/zvol/$root/vol1
-	log_mustnot test -e /dev/zvol/$root/vol1 at snap
+	test_exists $root/vol1
+	test_notexists $root/vol1 at snap
 
 	log_must $ZFS promote $root/vol1
-	log_must test -c /dev/zvol/$root/vol1
-	log_must test -c /dev/zvol/$root/vol0
-	log_mustnot test -e /dev/zvol/$root/vol0 at snap
-	log_must test -c /dev/zvol/$root/vol1 at snap
+	test_exists $root/vol0 $root/vol1 $root/vol1 at snap
+	test_notexists $root/vol0 at snap
 
 	# Re-promote the original volume.
 	log_must $ZFS promote $root/vol0
-	log_must test -c /dev/zvol/$root/vol0
-	log_must test -c /dev/zvol/$root/vol1
-	log_must test -c /dev/zvol/$root/vol0 at snap
-	log_mustnot test -e /dev/zvol/$root/vol1 at snap
+	test_exists $root/vol0 $root/vol1 $root/vol0 at snap
+	test_notexists $root/vol1 at snap
 
 	# Clone a clone's snapshot.
 	log_must $ZFS snapshot $root/vol1 at newsnap
 	log_must $ZFS clone $root/vol1 at newsnap $root/vol2
-	log_must test -c /dev/zvol/$root/vol2
-	log_mustnot test -e /dev/zvol/$root/vol2 at snap
+	test_exists $root/vol2
+	test_notexists $root/vol2 at snap
 
 	# Now promote *that* clone.
 	log_must $ZFS promote $root/vol2
-	log_must test -c /dev/zvol/$root/vol0
-	log_must test -c /dev/zvol/$root/vol0 at snap
-	log_must test -c /dev/zvol/$root/vol1
-	log_mustnot test -e /dev/zvol/$root/vol1 at snap
-	log_mustnot test -e /dev/zvol/$root/vol1 at newsnap
-	log_must test -c /dev/zvol/$root/vol2
-	log_must test -c /dev/zvol/$root/vol2 at newsnap
+	test_exists $root/vol0 $root/vol0 at snap \
+		$root/vol1 $root/vol2 $root/vol2 at newsnap
+	test_notexists $root/vol1 at snap $root/vol1 at newsnap
 
 	renamed=${root}_renamed
 	log_must $ZFS rename $root $renamed
 	# Ensure that the root rename applies to clones and promoted clones.
-	log_mustnot test -e /dev/zvol/$root/vol1
-	log_must test -c /dev/zvol/$renamed/vol1
-	log_mustnot test -e /dev/zvol/$renamed/vol1 at snap
-	log_mustnot test -e /dev/zvol/$renamed/vol1 at newsnap
-	log_must test -c /dev/zvol/$renamed/vol2
-	log_must test -c /dev/zvol/$renamed/vol2 at newsnap
+	test_exists $renamed/vol1 $renamed/vol2 $renamed/vol2 at newsnap
+	test_notexists $root/vol1 $renamed/vol1 at snap $renamed/vol1 at newsnap
 	for vol in $VOLS; do
-		log_mustnot test -e /dev/zvol/$root/$vol
-		log_mustnot test -e /dev/zvol/$root/$vol at snap
-		log_must test -c /dev/zvol/$renamed/$vol
-		log_must test -c /dev/zvol/$renamed/$vol at snap
+		test_notexists $root/$vol $root/$vol at snap
+		test_exists $renamed/$vol $renamed/$vol at snap
 	done
+
 	log_must $ZFS destroy -r $renamed
-	log_mustnot test -e /dev/zvol/$renamed/vol0
-	log_mustnot test -e /dev/zvol/$renamed/vol1
-	log_mustnot test -e /dev/zvol/$renamed/vol2
+	test_notexists $renamed/vol0 $renamed/vol1 $renamed/vol2
 
 	(( i += 1 ))
 done


More information about the svn-src-projects mailing list