]> granicus.if.org Git - zfs/commitdiff
Clean up correctly in zpool_scrub_004_pos
authorGiuseppe Di Natale <dinatale2@users.noreply.github.com>
Tue, 18 Apr 2017 16:45:45 +0000 (09:45 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 18 Apr 2017 16:45:45 +0000 (09:45 -0700)
Ensure `zinject -c` all gets called whenever
zpool_scrub_004_pos exits.

Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Issue #5444
Closes #6021

tests/zfs-tests/tests/functional/cli_root/zpool_scrub/zpool_scrub_004_pos.ksh

index b2cb8893a07409e2ca023746c92cd0a50dd8c294..fabe276266f878b27fba391417e7eb1708c3eb18 100755 (executable)
 #      resilver does not complete before the scrub can be issued.  This
 #      can occur when testing with small pools or very fast hardware.
 
+function cleanup
+{
+       log_must zinject -c all
+}
+
 verify_runnable "global"
 
 # See issue: https://github.com/zfsonlinux/zfs/issues/5444
@@ -53,6 +58,8 @@ if is_32bit; then
        log_unsupported "Test case fails on 32-bit systems"
 fi
 
+log_onexit cleanup
+
 log_assert "Resilver prevent scrub from starting until the resilver completes"
 
 log_must zpool detach $TESTPOOL $DISK2
@@ -66,5 +73,4 @@ while ! is_pool_resilvered $TESTPOOL; do
        sleep 1
 done
 
-log_must zinject -c all
 log_pass "Resilver prevent scrub from starting until the resilver completes"