]> granicus.if.org Git - zfs/commitdiff
Cleanup zloop working directory after each pass
authorDon Brady <dev.fs.zfs@gmail.com>
Thu, 21 Sep 2017 17:17:56 +0000 (11:17 -0600)
committerTony Hutter <hutter2@llnl.gov>
Tue, 30 Jan 2018 16:27:31 +0000 (10:27 -0600)
Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Reviewed by: John Kennedy <jwk404@gmail.com>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Signed-off-by: Don Brady <don.brady@delphix.com>
Issue #6595
Closes #6663

scripts/zloop.sh

index 03e8250597c828aa3e0fa52eec406c46a8717a68..f0af875536f26d7d3745f2bd8722b8ea07cb2409 100755 (executable)
@@ -101,6 +101,7 @@ function store_core
 {
        core="$(core_file)"
        if [[ $ztrc -ne 0 ]] || [[ -f "$core" ]]; then
+               df -h "$workdir" >>ztest.out
                coreid=$(date "+zloop-%y%m%d-%H%M%S")
                foundcrashes=$((foundcrashes + 1))
 
@@ -150,7 +151,8 @@ function store_core
 # parse arguments
 # expected format: zloop [-t timeout] [-c coredir] [-- extra ztest args]
 coredir=$DEFAULTCOREDIR
-workdir=$DEFAULTWORKDIR
+basedir=$DEFAULTWORKDIR
+rundir="zloop-run"
 timeout=0
 size="512m"
 while getopts ":ht:s:c:f:" opt; do
@@ -158,7 +160,7 @@ while getopts ":ht:s:c:f:" opt; do
                t ) [[ $OPTARG -gt 0 ]] && timeout=$OPTARG ;;
                s ) [[ $OPTARG ]] && size=$OPTARG ;;
                c ) [[ $OPTARG ]] && coredir=$OPTARG ;;
-               f ) [[ $OPTARG ]] && workdir=$(readlink -f "$OPTARG") ;;
+               f ) [[ $OPTARG ]] && basedir=$(readlink -f "$OPTARG") ;;
                h ) usage
                    exit 2
                    ;;
@@ -202,6 +204,11 @@ curtime=$starttime
 while [[ $timeout -eq 0 ]] || [[ $curtime -le $((starttime + timeout)) ]]; do
        zopt="-VVVVV"
 
+       # start each run with an empty directory
+       workdir="$basedir/$rundir"
+       or_die rm -rf "$workdir"
+       or_die mkdir "$workdir"
+
        # switch between common arrangements & fully randomized
        if [[ $((RANDOM % 2)) -eq 0 ]]; then
                mirrors=2