Lines Matching defs:zd

393 typedef void ztest_func_t(ztest_ds_t *zd, uint64_t id);
1733 ztest_object_lock(ztest_ds_t *zd, uint64_t object, rl_type_t type)
1735 rll_t *rll = &zd->zd_object_lock[object & (ZTEST_OBJECT_LOCKS - 1)];
1741 ztest_object_unlock(ztest_ds_t *zd, uint64_t object)
1743 rll_t *rll = &zd->zd_object_lock[object & (ZTEST_OBJECT_LOCKS - 1)];
1749 ztest_range_lock(ztest_ds_t *zd, uint64_t object, uint64_t offset,
1753 rll_t *rll = &zd->zd_range_lock[hash & (ZTEST_RANGE_LOCKS - 1)];
1778 ztest_zd_init(ztest_ds_t *zd, ztest_shared_ds_t *szd, objset_t *os)
1780 zd->zd_os = os;
1781 zd->zd_zilog = dmu_objset_zil(os);
1782 zd->zd_shared = szd;
1783 dmu_objset_name(os, zd->zd_name);
1786 if (zd->zd_shared != NULL)
1787 zd->zd_shared->zd_seq = 0;
1789 VERIFY0(pthread_rwlock_init(&zd->zd_zilog_lock, NULL));
1790 mutex_init(&zd->zd_dirobj_lock, NULL, MUTEX_DEFAULT, NULL);
1793 ztest_rll_init(&zd->zd_object_lock[l]);
1796 ztest_rll_init(&zd->zd_range_lock[l]);
1800 ztest_zd_fini(ztest_ds_t *zd)
1804 mutex_destroy(&zd->zd_dirobj_lock);
1805 (void) pthread_rwlock_destroy(&zd->zd_zilog_lock);
1808 ztest_rll_destroy(&zd->zd_object_lock[l]);
1811 ztest_rll_destroy(&zd->zd_range_lock[l]);
1943 ztest_log_create(ztest_ds_t *zd, dmu_tx_t *tx, lr_create_t *lr)
1949 if (zil_replaying(zd->zd_zilog, tx))
1956 zil_itx_assign(zd->zd_zilog, itx, tx);
1960 ztest_log_remove(ztest_ds_t *zd, dmu_tx_t *tx, lr_remove_t *lr, uint64_t object)
1966 if (zil_replaying(zd->zd_zilog, tx))
1974 zil_itx_assign(zd->zd_zilog, itx, tx);
1978 ztest_log_write(ztest_ds_t *zd, dmu_tx_t *tx, lr_write_t *lr)
1983 if (zil_replaying(zd->zd_zilog, tx))
1986 if (lr->lr_length > zil_max_log_data(zd->zd_zilog, sizeof (lr_write_t)))
1993 dmu_read(zd->zd_os, lr->lr_foid, lr->lr_offset, lr->lr_length,
1999 itx->itx_private = zd;
2006 zil_itx_assign(zd->zd_zilog, itx, tx);
2010 ztest_log_truncate(ztest_ds_t *zd, dmu_tx_t *tx, lr_truncate_t *lr)
2014 if (zil_replaying(zd->zd_zilog, tx))
2022 zil_itx_assign(zd->zd_zilog, itx, tx);
2026 ztest_log_setattr(ztest_ds_t *zd, dmu_tx_t *tx, lr_setattr_t *lr)
2030 if (zil_replaying(zd->zd_zilog, tx))
2038 zil_itx_assign(zd->zd_zilog, itx, tx);
2047 ztest_ds_t *zd = arg1;
2051 objset_t *os = zd->zd_os;
2106 ASSERT(zd->zd_zilog->zl_replay);
2128 (void) ztest_log_create(zd, tx, lrc);
2138 ztest_ds_t *zd = arg1;
2141 objset_t *os = zd->zd_os;
2156 ztest_object_lock(zd, object, ZTRL_WRITER);
2167 ztest_object_unlock(zd, object);
2179 (void) ztest_log_remove(zd, tx, lr, object);
2183 ztest_object_unlock(zd, object);
2191 ztest_ds_t *zd = arg1;
2193 objset_t *os = zd->zd_os;
2226 ztest_object_lock(zd, lr->lr_foid, ZTRL_READER);
2227 rl = ztest_range_lock(zd, lr->lr_foid, offset, length, ZTRL_WRITER);
2253 ztest_object_unlock(zd, lr->lr_foid);
2291 if (zd->zd_zilog->zl_replay) {
2312 (void) ztest_log_write(zd, tx, lr);
2319 ztest_object_unlock(zd, lr->lr_foid);
2327 ztest_ds_t *zd = arg1;
2329 objset_t *os = zd->zd_os;
2337 ztest_object_lock(zd, lr->lr_foid, ZTRL_READER);
2338 rl = ztest_range_lock(zd, lr->lr_foid, lr->lr_offset, lr->lr_length,
2348 ztest_object_unlock(zd, lr->lr_foid);
2355 (void) ztest_log_truncate(zd, tx, lr);
2360 ztest_object_unlock(zd, lr->lr_foid);
2368 ztest_ds_t *zd = arg1;
2370 objset_t *os = zd->zd_os;
2379 ztest_object_lock(zd, lr->lr_foid, ZTRL_WRITER);
2389 ztest_object_unlock(zd, lr->lr_foid);
2399 if (zd->zd_zilog->zl_replay) {
2431 (void) ztest_log_setattr(zd, tx, lr);
2435 ztest_object_unlock(zd, lr->lr_foid);
2474 ztest_ds_t *zd = zgd->zgd_private;
2481 ztest_object_unlock(zd, object);
2491 ztest_ds_t *zd = arg;
2492 objset_t *os = zd->zd_os;
2506 ztest_object_lock(zd, object, ZTRL_READER);
2509 ztest_object_unlock(zd, object);
2517 ztest_object_unlock(zd, object);
2527 zgd->zgd_private = zd;
2530 zgd->zgd_lr = (struct zfs_locked_range *)ztest_range_lock(zd,
2546 zgd->zgd_lr = (struct zfs_locked_range *)ztest_range_lock(zd,
2599 ztest_lookup(ztest_ds_t *zd, ztest_od_t *od, int count)
2605 ASSERT(MUTEX_HELD(&zd->zd_dirobj_lock));
2609 error = zap_lookup(zd->zd_os, od->od_dir, od->od_name,
2623 ztest_object_lock(zd, od->od_object, ZTRL_READER);
2624 VERIFY0(dmu_bonus_hold(zd->zd_os, od->od_object,
2633 ztest_object_unlock(zd, od->od_object);
2641 ztest_create(ztest_ds_t *zd, ztest_od_t *od, int count)
2646 ASSERT(MUTEX_HELD(&zd->zd_dirobj_lock));
2668 if (ztest_replay_create(zd, lr, B_FALSE) != 0) {
2687 ztest_remove(ztest_ds_t *zd, ztest_od_t *od, int count)
2693 ASSERT(MUTEX_HELD(&zd->zd_dirobj_lock));
2713 if ((error = ztest_replay_remove(zd, lr, B_FALSE)) != 0) {
2726 ztest_write(ztest_ds_t *zd, uint64_t object, uint64_t offset, uint64_t size,
2742 error = ztest_replay_write(zd, lr, B_FALSE);
2750 ztest_truncate(ztest_ds_t *zd, uint64_t object, uint64_t offset, uint64_t size)
2761 error = ztest_replay_truncate(zd, lr, B_FALSE);
2769 ztest_setattr(ztest_ds_t *zd, uint64_t object)
2780 error = ztest_replay_setattr(zd, lr, B_FALSE);
2788 ztest_prealloc(ztest_ds_t *zd, uint64_t object, uint64_t offset, uint64_t size)
2790 objset_t *os = zd->zd_os;
2797 ztest_object_lock(zd, object, ZTRL_READER);
2798 rl = ztest_range_lock(zd, object, offset, size, ZTRL_WRITER);
2815 ztest_object_unlock(zd, object);
2819 ztest_io(ztest_ds_t *zd, uint64_t object, uint64_t offset)
2835 VERIFY0(dmu_object_info(zd->zd_os, object, &doi));
2846 (void) pthread_rwlock_rdlock(&zd->zd_zilog_lock);
2851 ztest_bt_generate(&wbt, zd->zd_os, object, doi.doi_dnodesize,
2853 (void) ztest_write(zd, object, offset, sizeof (wbt), &wbt);
2867 (void) ztest_write(zd, object, offset, blocksize, data);
2872 (void) ztest_write(zd, object, offset, blocksize, data);
2876 (void) ztest_truncate(zd, object, offset, blocksize);
2880 (void) ztest_setattr(zd, object);
2887 err = ztest_dsl_prop_set_uint64(zd->zd_name,
2891 err = ztest_dsl_prop_set_uint64(zd->zd_name,
2898 VERIFY0(dmu_read(zd->zd_os, object, offset, blocksize, data,
2901 (void) ztest_write(zd, object, offset, blocksize, data);
2905 (void) pthread_rwlock_unlock(&zd->zd_zilog_lock);
2942 ztest_object_init(ztest_ds_t *zd, ztest_od_t *od, size_t size, boolean_t remove)
2947 mutex_enter(&zd->zd_dirobj_lock);
2948 if ((ztest_lookup(zd, od, count) != 0 || remove) &&
2949 (ztest_remove(zd, od, count) != 0 ||
2950 ztest_create(zd, od, count) != 0))
2952 zd->zd_od = od;
2953 mutex_exit(&zd->zd_dirobj_lock);
2959 ztest_zil_commit(ztest_ds_t *zd, uint64_t id)
2962 zilog_t *zilog = zd->zd_zilog;
2964 (void) pthread_rwlock_rdlock(&zd->zd_zilog_lock);
2969 * Remember the committed values in zd, which is in parent/child
2974 ASSERT3P(zd->zd_shared, !=, NULL);
2975 ASSERT3U(zd->zd_shared->zd_seq, <=, zilog->zl_commit_lr_seq);
2976 zd->zd_shared->zd_seq = zilog->zl_commit_lr_seq;
2979 (void) pthread_rwlock_unlock(&zd->zd_zilog_lock);
2988 ztest_zil_remount(ztest_ds_t *zd, uint64_t id)
2991 objset_t *os = zd->zd_os;
3005 mutex_enter(&zd->zd_dirobj_lock);
3006 (void) pthread_rwlock_wrlock(&zd->zd_zilog_lock);
3009 zil_close(zd->zd_zilog);
3012 VERIFY3P(zil_open(os, ztest_get_data, NULL), ==, zd->zd_zilog);
3013 zil_replay(os, zd, ztest_replay_vector);
3015 (void) pthread_rwlock_unlock(&zd->zd_zilog_lock);
3016 mutex_exit(&zd->zd_dirobj_lock);
3025 ztest_spa_create_destroy(ztest_ds_t *zd, uint64_t id)
3027 (void) zd, (void) id;
3088 ztest_mmp_enable_disable(ztest_ds_t *zd, uint64_t id)
3090 (void) zd, (void) id;
3153 ztest_spa_upgrade(ztest_ds_t *zd, uint64_t id)
3155 (void) zd, (void) id;
3276 ztest_spa_checkpoint_create_discard(ztest_ds_t *zd, uint64_t id)
3278 (void) zd, (void) id;
3320 ztest_vdev_add_remove(ztest_ds_t *zd, uint64_t id)
3322 (void) zd, (void) id;
3412 ztest_vdev_class_add(ztest_ds_t *zd, uint64_t id)
3414 (void) zd, (void) id;
3472 error = ztest_dsl_prop_set_uint64(zd->zd_name,
3495 ztest_vdev_aux_add_remove(ztest_ds_t *zd, uint64_t id)
3497 (void) zd, (void) id;
3607 ztest_split_pool(ztest_ds_t *zd, uint64_t id)
3609 (void) zd, (void) id;
3703 ztest_vdev_attach_detach(ztest_ds_t *zd, uint64_t id)
3705 (void) zd, (void) id;
4070 ztest_vdev_raidz_attach(ztest_ds_t *zd, uint64_t id)
4072 (void) zd, (void) id;
4182 ztest_device_removal(ztest_ds_t *zd, uint64_t id)
4184 (void) zd, (void) id;
4359 ztest_vdev_LUN_growth(ztest_ds_t *zd, uint64_t id)
4361 (void) zd, (void) id;
4691 ztest_dmu_objset_create_destroy(ztest_ds_t *zd, uint64_t id)
4693 (void) zd;
4808 ztest_dmu_snapshot_create_destroy(ztest_ds_t *zd, uint64_t id)
4811 (void) ztest_snapshot_destroy(zd->zd_name, id);
4812 (void) ztest_snapshot_create(zd->zd_name, id);
4876 ztest_dsl_dataset_promote_busy(ztest_ds_t *zd, uint64_t id)
4884 char *osname = zd->zd_name;
4987 ztest_dmu_object_alloc_free(ztest_ds_t *zd, uint64_t id)
5006 if (ztest_object_init(zd, od, size, B_TRUE) != 0) {
5007 zd->zd_od = NULL;
5013 ztest_io(zd, od[ztest_random(batchsize)].od_object,
5023 ztest_dmu_object_next_chunk(ztest_ds_t *zd, uint64_t id)
5026 objset_t *os = zd->zd_os;
5048 ztest_dmu_read_write(ztest_ds_t *zd, uint64_t id)
5053 objset_t *os = zd->zd_os;
5105 if (ztest_object_init(zd, od, size, B_FALSE) != 0) {
5345 ztest_dmu_read_write_zcopy(ztest_ds_t *zd, uint64_t id)
5347 objset_t *os = zd->zd_os;
5399 if (ztest_object_init(zd, od, size, B_FALSE) != 0) {
5589 ztest_dmu_write_parallel(ztest_ds_t *zd, uint64_t id)
5605 if (ztest_object_init(zd, od, sizeof (ztest_od_t), B_FALSE) != 0)
5609 ztest_io(zd, od->od_object, offset);
5615 ztest_dmu_prealloc(ztest_ds_t *zd, uint64_t id)
5628 if (ztest_object_init(zd, od, sizeof (ztest_od_t),
5634 if (ztest_truncate(zd, od->od_object, offset, count * blocksize) != 0) {
5639 ztest_prealloc(zd, od->od_object, offset, count * blocksize);
5645 if (ztest_write(zd, od->od_object, randoff, blocksize,
5649 ztest_io(zd, od->od_object, randoff);
5664 ztest_zap(ztest_ds_t *zd, uint64_t id)
5666 objset_t *os = zd->zd_os;
5681 if (ztest_object_init(zd, od, sizeof (ztest_od_t),
5809 ztest_fzap(ztest_ds_t *zd, uint64_t id)
5811 objset_t *os = zd->zd_os;
5818 if (ztest_object_init(zd, od, sizeof (ztest_od_t),
5851 ztest_zap_parallel(ztest_ds_t *zd, uint64_t id)
5854 objset_t *os = zd->zd_os;
5866 if (ztest_object_init(zd, od, sizeof (ztest_od_t), B_FALSE) != 0) {
6046 ztest_dmu_commit_callbacks(ztest_ds_t *zd, uint64_t id)
6048 objset_t *os = zd->zd_os;
6058 if (ztest_object_init(zd, od, sizeof (ztest_od_t), B_FALSE) != 0) {
6186 ztest_verify_dnode_bt(ztest_ds_t *zd, uint64_t id)
6189 objset_t *os = zd->zd_os;
6198 ztest_object_lock(zd, obj, ZTRL_READER);
6200 ztest_object_unlock(zd, obj);
6216 ztest_object_unlock(zd, obj);
6221 ztest_dsl_prop_get_set(ztest_ds_t *zd, uint64_t id)
6234 int error = ztest_dsl_prop_set_uint64(zd->zd_name, proplist[p],
6239 int error = ztest_dsl_prop_set_uint64(zd->zd_name, ZFS_PROP_RECORDSIZE,
6247 ztest_spa_prop_get_set(ztest_ds_t *zd, uint64_t id)
6249 (void) zd, (void) id;
6287 ztest_dmu_snapshot_hold(ztest_ds_t *zd, uint64_t id)
6290 objset_t *os = zd->zd_os;
6412 ztest_fault_inject(ztest_ds_t *zd, uint64_t id)
6414 (void) zd, (void) id;
6754 ztest_scrub(ztest_ds_t *zd, uint64_t id)
6756 (void) zd, (void) id;
6782 ztest_reguid(ztest_ds_t *zd, uint64_t id)
6784 (void) zd, (void) id;
6814 ztest_blake3(ztest_ds_t *zd, uint64_t id)
6816 (void) zd, (void) id;
6901 ztest_fletcher(ztest_ds_t *zd, uint64_t id)
6903 (void) zd, (void) id;
6971 ztest_fletcher_incr(ztest_ds_t *zd, uint64_t id)
6973 (void) zd, (void) id;
7048 ztest_pool_prefetch_ddt(ztest_ds_t *zd, uint64_t id)
7050 (void) zd, (void) id;
7192 ztest_initialize(ztest_ds_t *zd, uint64_t id)
7194 (void) zd, (void) id;
7264 ztest_trim(ztest_ds_t *zd, uint64_t id)
7266 (void) zd, (void) id;
7340 ztest_ddt_prune(ztest_ds_t *zd, uint64_t id)
7342 (void) zd, (void) id;
7619 ztest_ds_t *zd = &ztest_ds[id % ztest_opts.zo_datasets];
7625 zi->zi_func(zd, id);
7660 ztest_ds_t *zd = &ztest_ds[info->rzx_id % ztest_opts.zo_datasets];
7672 if (ztest_object_init(zd, od, od_size, B_FALSE) != 0) {
7682 (void) pthread_rwlock_rdlock(&zd->zd_zilog_lock);
7683 ztest_write(zd, od[i].od_object, offset,
7685 (void) pthread_rwlock_unlock(&zd->zd_zilog_lock);
7697 mutex_enter(&zd->zd_dirobj_lock);
7698 (void) ztest_remove(zd, od, 2);
7699 mutex_exit(&zd->zd_dirobj_lock);
7781 ztest_dataset_dirobj_verify(ztest_ds_t *zd)
7796 VERIFY0(zap_count(zd->zd_os, ZTEST_DIROBJ, &dirobjs));
7797 dmu_objset_space(zd->zd_os, &scratch, &scratch, &usedobjs, &scratch);
7804 ztest_ds_t *zd = &ztest_ds[d];
7824 B_TRUE, zd, &os));
7827 ztest_zd_init(zd, ZTEST_GET_SHARED_DS(d), os);
7829 zilog = zd->zd_zilog;
7837 ztest_dataset_dirobj_verify(zd);
7839 zil_replay(os, zd, ztest_replay_vector);
7841 ztest_dataset_dirobj_verify(zd);
7846 zd->zd_name,
7865 ztest_ds_t *zd = &ztest_ds[d];
7867 zil_close(zd->zd_zilog);
7868 dmu_objset_disown(zd->zd_os, B_TRUE, zd);
7870 ztest_zd_fini(zd);
7910 ztest_ds_t *zd = &ztest_ds[0];
7932 while (BP_IS_HOLE(&zd->zd_zilog->zl_header->zh_log)) {
7933 ztest_dmu_object_alloc_free(zd, 0);
7934 zil_commit(zd->zd_zilog, 0);
7967 VERIFY0(ztest_object_init(zd, &od, sizeof (od), B_FALSE));
7968 ztest_io(zd, od.od_object,
7976 zil_commit(zd->zd_zilog, 0);