From: Brian Behlendorf Date: Thu, 14 Jun 2018 16:41:27 +0000 (-0700) Subject: Fix ztest_vdev_add_remove() test case X-Git-Tag: zfs-0.8.0-rc1~121 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c91cf36fc23f66efd9de5738b62cf8dec87f15ce;p=zfs Fix ztest_vdev_add_remove() test case Commit 2ffd89fc allowed two new errors to be reported by zil_reset() in order to provide a descriptive error message regarding why a log device could not be removed. However, the new return values were not handled in the ztest_vdev_add_remove() test case resulting in ztest failures during automated testing. Reviewed-by: Tim Chase Reviewed-by: George Melikov Reviewed-by: Paul Zuchowski Signed-off-by: Brian Behlendorf Closes #7630 --- diff --git a/cmd/ztest/ztest.c b/cmd/ztest/ztest.c index bbd30c9e0..83a8b4f3c 100644 --- a/cmd/ztest/ztest.c +++ b/cmd/ztest/ztest.c @@ -2948,8 +2948,15 @@ ztest_vdev_add_remove(ztest_ds_t *zd, uint64_t id) error = spa_vdev_remove(spa, guid, B_FALSE); pthread_rwlock_unlock(&ztest_name_lock); - if (error && error != EEXIST) + switch (error) { + case 0: + case EEXIST: /* Generic zil_reset() error */ + case EBUSY: /* Replay required */ + case EACCES: /* Crypto key not loaded */ + break; + default: fatal(0, "spa_vdev_remove() = %d", error); + } } else { spa_config_exit(spa, SCL_VDEV, FTAG);