Author: asomers
Date: Wed Oct  9 17:24:09 2019
New Revision: 353360
URL: https://svnweb.freebsd.org/changeset/base/353360

Log:
  ZFS: multiple fixes to the zpool_import tests
  
  * Don't create a UFS mountpoint just to store some temporary files.  The
    tests should always be executed with a sufficiently large TMPDIR.
    Creating the UFS mountpoint is not only unneccessary, but it slowed
    zpool_import_missing_002_pos greatly, because that test moves large files
    between TMPDIR and the UFS mountpoint.  This change also allows many of
    the tests to be executed with just a single test disk, instead of two.
  
  * Move zpool_import_missing_002_pos's backup device dir from / to $PWD to
    prevent cross-device moves.  On my system, these two changes improved that
    test's speed by 39x.  It should also prevent ENOSPC errors seen in CI.
  
  * If insufficient disks are available, don't try to partition one of them.
    Just rely on Kyua to skip the test.  Users who care will configure Kyua
    with sufficient disks.
  
  MFC after:    2 weeks
  Sponsored by: Axcient

Modified:
  head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh
  head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh
  head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg
  
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
  head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh

Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh     Wed Oct 
 9 17:08:40 2019        (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/cleanup.ksh     Wed Oct 
 9 17:24:09 2019        (r353360)
@@ -39,24 +39,9 @@ for pool in "$TESTPOOL" "$TESTPOOL1"; do
        destroy_pool "$pool"
 done
 
-ismounted $DEVICE_DIR ufs
-(( $? == 0 )) && log_must $UMOUNT -f $DEVICE_DIR
-
 for dir in "$TESTDIR" "$TESTDIR1" "$DEVICE_DIR" ; do
        [[ -d $dir ]] && \
                log_must $RM -rf $dir
 done
-
-# recreate and destroy a zpool over the disks to restore the partitions to
-# normal
-case $DISK_COUNT in
-0|1)
-       log_note "No disk devices to restore"
-       ;;
-*)
-       log_must cleanup_devices $ZFS_DISK1
-       log_must cleanup_devices $ZFS_DISK2
-       ;;
-esac
 
 log_pass

Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh       Wed Oct 
 9 17:08:40 2019        (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/setup.ksh       Wed Oct 
 9 17:24:09 2019        (r353360)
@@ -33,19 +33,8 @@
 
 verify_runnable "global"
 
-DISK=${DISKS%% *}
+create_pool "$TESTPOOL" "$DISK0"
 
-for dev in $ZFS_DISK1 $ZFS_DISK2 ; do
-       log_must cleanup_devices $dev
-done
-
-typeset -i i=0
-if [[ $DISK_COUNT -lt 2 ]]; then
-    partition_disk $PART_SIZE $ZFS_DISK1 $GROUP_NUM
-fi
-
-create_pool "$TESTPOOL" "$ZFSSIDE_DISK1"
-
 if [[ -d $TESTDIR ]]; then
        $RM -rf $TESTDIR  || log_unresolved Could not remove $TESTDIR
        $MKDIR -p $TESTDIR || log_unresolved Could not create $TESTDIR
@@ -54,21 +43,8 @@ fi
 log_must $ZFS create $TESTPOOL/$TESTFS
 log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS
 
-# Limit the filesystem size to 32GiB; this should be sufficient.
-(( MAXSECTS = 32 * 1024 * 1024 ))
-NUMSECTS=`diskinfo ${ZFSSIDE_DISK2} | awk '{print $4}'`
-if [[ $NUMSECTS -gt $MAXSECTS ]]; then
-       NUMSECTS=$MAXSECTS
-fi
-
-$ECHO "y" | $NEWFS -s $NUMSECTS $ZFSSIDE_DISK2 >/dev/null 2>&1
-(( $? != 0 )) &&
-       log_untested "Unable to setup a UFS file system"
-
 [[ ! -d $DEVICE_DIR ]] && \
        log_must $MKDIR -p $DEVICE_DIR
-
-log_must $MOUNT $ZFSSIDE_DISK2 $DEVICE_DIR
 
 i=0
 while (( i < $MAX_NUM )); do

Modified: head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg        
Wed Oct  9 17:08:40 2019        (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import.cfg        
Wed Oct  9 17:24:09 2019        (r353360)
@@ -32,43 +32,17 @@
 . $STF_SUITE/tests/cli_root/cli.cfg
 . $STF_SUITE/include/libtest.kshlib
 
-set -A disk_array $(find_disks $DISKS)
-case "${#disk_array[*]}" in
-0)
-       #
-       # on stf_configure, disk_freelist returns empty.
-       #
-       DISK_COUNT=0
-       ;;
-1)
-       # We need to repartition the single disk to two slices.
-       DISK_COUNT=1
-       ZFS_DISK1=${disk_array[0]}
-       ZFSSIDE_DISK1=${ZFS_DISK1}p1
-       ZFS_DISK2=${disk_array[0]}
-       ZFSSIDE_DISK2=${ZFS_DISK2}p2
-       ;;
-*)
-       # We don't need to repartition anything
-       DISK_COUNT=2
-       ZFS_DISK1=${disk_array[0]}
-       ZFSSIDE_DISK1=${ZFS_DISK1}
-       ZFS_DISK2=${disk_array[1]}
-       ZFSSIDE_DISK2=${ZFS_DISK2}
-       ;;
-esac
+set_disks
 
-export DISK_COUNT ZFS_DISK1 ZFSSIDE_DISK1 ZFS_DISK2 ZFSSIDE_DISK2
-
 export FS_SIZE=2gb
 export FILE_SIZE=64m
 export PART_SIZE=128m
 export MAX_NUM=5
 export GROUP_NUM=3
-export DEVICE_DIR=${TMPDIR}/dev${TESTCASE_ID}
-export BACKUP_DEVICE_DIR=/bakdev${TESTCASE_ID}
+export DEVICE_DIR=$(pwd)/dev
+export BACKUP_DEVICE_DIR=$(pwd)/bakdev
 export DEVICE_FILE=disk
-export DEVICE_ARCHIVE=${TMPDIR}/archive${TESTCASE_ID}.tar
+export DEVICE_ARCHIVE=$(pwd)/archive${TESTCASE_ID}.tar
 # MYTESTFILE can be any file that exists and we have r access to
 export MYTESTFILE=$STF_SUITE/include/default.cfg
 

Modified: 
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
==============================================================================
--- 
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
    Wed Oct  9 17:08:40 2019        (r353359)
+++ 
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_all_001_pos.ksh
    Wed Oct  9 17:24:09 2019        (r353360)
@@ -183,9 +183,9 @@ while (( number <= $GROUP_NUM )); do
                        continue
                fi
        fi
-       set_partition $number "" $PART_SIZE ${ZFS_DISK2}
+       set_partition $number "" $PART_SIZE ${DISK1}
 
-       setup_single_disk "${ZFS_DISK2}p${number}" \
+       setup_single_disk "${DISK1}p${number}" \
                "${TESTPOOL}-$number" \
                "$TESTFS" \
                "$TESTDIR.$number"

Modified: 
head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh
==============================================================================
--- head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh    
Wed Oct  9 17:08:40 2019        (r353359)
+++ head/tests/sys/cddl/zfs/tests/cli_root/zpool_import/zpool_import_test.sh    
Wed Oct  9 17:24:09 2019        (r353360)
@@ -38,7 +38,7 @@ zpool_import_002_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_002_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -63,7 +63,7 @@ zpool_import_003_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_003_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -88,7 +88,7 @@ zpool_import_004_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_004_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -113,7 +113,7 @@ zpool_import_005_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_005_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -138,7 +138,7 @@ zpool_import_006_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_006_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -163,7 +163,7 @@ zpool_import_007_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_007_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -188,7 +188,7 @@ zpool_import_008_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_008_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -213,7 +213,7 @@ zpool_import_009_neg_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_009_neg.ksh || atf_fail "Testcase 
failed"
 }
@@ -238,7 +238,7 @@ zpool_import_010_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_010_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -263,7 +263,7 @@ zpool_import_011_neg_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_011_neg.ksh || atf_fail "Testcase 
failed"
 }
@@ -288,7 +288,7 @@ zpool_import_012_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_012_pos.ksh || atf_fail "Testcase 
failed"
 }
@@ -377,7 +377,7 @@ zpool_import_missing_001_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_missing_001_pos.ksh || atf_fail 
"Testcase failed"
 }
@@ -402,7 +402,7 @@ zpool_import_missing_002_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_missing_002_pos.ksh || atf_fail 
"Testcase failed"
 }
@@ -427,7 +427,7 @@ zpool_import_missing_003_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_missing_003_pos.ksh || atf_fail 
"Testcase failed"
 }
@@ -482,7 +482,7 @@ zpool_import_rename_001_pos_body()
        . $(atf_get_srcdir)/../../../include/default.cfg
        . $(atf_get_srcdir)/zpool_import.cfg
 
-       verify_disk_count "$DISKS" 2
+       verify_disk_count "$DISKS" 1
        ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
        ksh93 $(atf_get_srcdir)/zpool_import_rename_001_pos.ksh || atf_fail 
"Testcase failed"
 }
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to