mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-12-26 03:09:34 +03:00
ztest: ztest_dsl_prop_set_uint64() ENOSPC consistency
It is possible for ztest_dsl_prop_set_uint64() to fail with ENOSPC and this needs to be handled consistently. Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #14351
This commit is contained in:
parent
f7788883ab
commit
549aafb7c8
18
cmd/ztest.c
18
cmd/ztest.c
@ -2790,12 +2790,12 @@ ztest_io(ztest_ds_t *zd, uint64_t object, uint64_t offset)
|
||||
err = ztest_dsl_prop_set_uint64(zd->zd_name,
|
||||
ZFS_PROP_CHECKSUM, spa_dedup_checksum(ztest_spa),
|
||||
B_FALSE);
|
||||
VERIFY(err == 0 || err == ENOSPC);
|
||||
ASSERT(err == 0 || err == ENOSPC);
|
||||
err = ztest_dsl_prop_set_uint64(zd->zd_name,
|
||||
ZFS_PROP_COMPRESSION,
|
||||
ztest_random_dsl_prop(ZFS_PROP_COMPRESSION),
|
||||
B_FALSE);
|
||||
VERIFY(err == 0 || err == ENOSPC);
|
||||
ASSERT(err == 0 || err == ENOSPC);
|
||||
(void) pthread_rwlock_unlock(&ztest_name_lock);
|
||||
|
||||
VERIFY0(dmu_read(zd->zd_os, object, offset, blocksize, data,
|
||||
@ -3347,8 +3347,9 @@ ztest_vdev_class_add(ztest_ds_t *zd, uint64_t id)
|
||||
spa_special_class(spa)->mc_groups == 1 && ztest_random(2) == 0) {
|
||||
if (ztest_opts.zo_verbose >= 3)
|
||||
(void) printf("Enabling special VDEV small blocks\n");
|
||||
(void) ztest_dsl_prop_set_uint64(zd->zd_name,
|
||||
error = ztest_dsl_prop_set_uint64(zd->zd_name,
|
||||
ZFS_PROP_SPECIAL_SMALL_BLOCKS, 32768, B_FALSE);
|
||||
ASSERT(error == 0 || error == ENOSPC);
|
||||
}
|
||||
|
||||
mutex_exit(&ztest_vdev_lock);
|
||||
@ -5839,12 +5840,15 @@ ztest_dsl_prop_get_set(ztest_ds_t *zd, uint64_t id)
|
||||
|
||||
(void) pthread_rwlock_rdlock(&ztest_name_lock);
|
||||
|
||||
for (int p = 0; p < sizeof (proplist) / sizeof (proplist[0]); p++)
|
||||
(void) ztest_dsl_prop_set_uint64(zd->zd_name, proplist[p],
|
||||
for (int p = 0; p < sizeof (proplist) / sizeof (proplist[0]); p++) {
|
||||
int error = ztest_dsl_prop_set_uint64(zd->zd_name, proplist[p],
|
||||
ztest_random_dsl_prop(proplist[p]), (int)ztest_random(2));
|
||||
ASSERT(error == 0 || error == ENOSPC);
|
||||
}
|
||||
|
||||
VERIFY0(ztest_dsl_prop_set_uint64(zd->zd_name, ZFS_PROP_RECORDSIZE,
|
||||
ztest_random_blocksize(), (int)ztest_random(2)));
|
||||
int error = ztest_dsl_prop_set_uint64(zd->zd_name, ZFS_PROP_RECORDSIZE,
|
||||
ztest_random_blocksize(), (int)ztest_random(2));
|
||||
ASSERT(error == 0 || error == ENOSPC);
|
||||
|
||||
(void) pthread_rwlock_unlock(&ztest_name_lock);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user