]> granicus.if.org Git - zfs/commitdiff
Increase default zloop.sh vdev size
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 13 Oct 2017 19:39:39 +0000 (12:39 -0700)
committerGitHub <noreply@github.com>
Fri, 13 Oct 2017 19:39:39 +0000 (12:39 -0700)
The default 128M vdev size used by zloop.sh isn't always large
enough and can result in ENOSPC failures which suspend the pool.
Increase the default size to 512M and provide a -s option which
can be used to specify an alternate size.

This does increase the free space requirements to run zloop.sh.
However, since the vdevs are sparse 4x the space is not required.

Reviewed-by: Don Brady <don.brady@delphix.com>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #6758

scripts/zloop.sh

index 3139bd42ba935b63ceffa7175e4656f4c25c5b46..a45c450247f99655e0a82ee49350fba64525c514 100755 (executable)
@@ -36,7 +36,7 @@ DEFAULTCOREDIR=/var/tmp/zloop
 
 function usage
 {
-       echo -e "\n$0 [-t <timeout>] [-c <dump directory>]" \
+       echo -e "\n$0 [-t <timeout>] [ -s <vdev size> ] [-c <dump directory>]" \
            "[ -- [extra ztest parameters]]\n" \
            "\n" \
            "  This script runs ztest repeatedly with randomized arguments.\n" \
@@ -48,6 +48,7 @@ function usage
            "  Options:\n" \
            "    -t  Total time to loop for, in seconds. If not provided,\n" \
            "        zloop runs forever.\n" \
+           "    -s  Size of vdev devices.\n" \
            "    -f  Specify working directory for ztest vdev files.\n" \
            "    -c  Specify a core dump directory to use.\n" \
            "    -h  Print this help message.\n" \
@@ -161,9 +162,11 @@ coredir=$DEFAULTCOREDIR
 basedir=$DEFAULTWORKDIR
 rundir="zloop-run"
 timeout=0
-while getopts ":ht:c:f:" opt; do
+size="512m"
+while getopts ":ht:s:c:f:" opt; do
        case $opt in
                t ) [[ $OPTARG -gt 0 ]] && timeout=$OPTARG ;;
+               s ) [[ $OPTARG ]] && size=$OPTARG ;;
                c ) [[ $OPTARG ]] && coredir=$OPTARG ;;
                f ) [[ $OPTARG ]] && basedir=$(readlink -f "$OPTARG") ;;
                h ) usage
@@ -232,7 +235,6 @@ while [[ $timeout -eq 0 ]] || [[ $curtime -le $((starttime + timeout)) ]]; do
        align=$(((RANDOM % 2) * 3 + 9))
        runtime=$((RANDOM % 100))
        passtime=$((RANDOM % (runtime / 3 + 1) + 10))
-       size=128m
 
        zopt="$zopt -m $mirrors"
        zopt="$zopt -r $raidz"