Lines Matching refs:ds

231 	dsl_dataset_t *ds;
255 FTAG, &ds);
258 ds->ds_phys->ds_prev_snap_obj, dp,
260 dsl_dataset_rele(ds, FTAG);
360 dsl_dataset_t *ds;
409 VERIFY0(dsl_dataset_hold_obj(dp, obj, FTAG, &ds));
410 os = dmu_objset_create_impl(dp->dp_spa, ds,
411 dsl_dataset_get_blkptr(ds), DMU_OST_ZFS, tx);
415 dsl_dataset_rele(ds, FTAG);
481 dsl_dataset_t *ds;
494 while ((ds = txg_list_remove(&dp->dp_dirty_datasets, txg)) != NULL) {
500 ASSERT(!list_link_active(&ds->ds_synced_link));
501 list_insert_tail(&synced_datasets, ds);
502 dsl_dataset_sync(ds, zio, tx);
519 for (ds = list_head(&synced_datasets); ds != NULL;
520 ds = list_next(&synced_datasets, ds)) {
521 dmu_objset_do_userquota_updates(ds->ds_objset, tx);
532 while ((ds = txg_list_remove(&dp->dp_dirty_datasets, txg)) != NULL) {
533 ASSERT(list_link_active(&ds->ds_synced_link));
534 dmu_buf_rele(ds->ds_dbuf, ds);
535 dsl_dataset_sync(ds, zio, tx);
546 while ((ds = list_remove_head(&synced_datasets)) != NULL) {
547 objset_t *os = ds->ds_objset;
548 bplist_iterate(&ds->ds_pending_deadlist,
549 deadlist_enqueue_cb, &ds->ds_deadlist, tx);
551 dmu_buf_rele(ds->ds_dbuf, ds);
609 dsl_dataset_t *ds = dmu_objset_ds(zilog->zl_os);
612 dmu_buf_rele(ds->ds_dbuf, zilog);
700 dsl_dataset_t *ds, *prev = NULL;
703 err = dsl_dataset_hold_obj(dp, hds->ds_object, FTAG, &ds);
707 while (ds->ds_phys->ds_prev_snap_obj != 0) {
708 err = dsl_dataset_hold_obj(dp, ds->ds_phys->ds_prev_snap_obj,
711 dsl_dataset_rele(ds, FTAG);
715 if (prev->ds_phys->ds_next_snap_obj != ds->ds_object)
717 dsl_dataset_rele(ds, FTAG);
718 ds = prev;
732 if (ds->ds_object == prev->ds_object) {
733 dsl_dataset_rele(ds, FTAG);
737 dmu_buf_will_dirty(ds->ds_dbuf, tx);
738 ds->ds_phys->ds_prev_snap_obj = prev->ds_object;
739 ds->ds_phys->ds_prev_snap_txg = prev->ds_phys->ds_creation_txg;
741 dmu_buf_will_dirty(ds->ds_dir->dd_dbuf, tx);
742 ds->ds_dir->dd_phys->dd_origin_obj = prev->ds_object;
747 if (ds->ds_phys->ds_next_snap_obj == 0) {
748 ASSERT(ds->ds_prev == NULL);
750 ds->ds_phys->ds_prev_snap_obj, ds, &ds->ds_prev));
754 ASSERT3U(ds->ds_dir->dd_phys->dd_origin_obj, ==, prev->ds_object);
755 ASSERT3U(ds->ds_phys->ds_prev_snap_obj, ==, prev->ds_object);
764 prev->ds_phys->ds_next_clones_obj, ds->ds_object, tx));
766 dsl_dataset_rele(ds, FTAG);
784 upgrade_dir_clones_cb(dsl_pool_t *dp, dsl_dataset_t *ds, void *arg)
789 if (ds->ds_dir->dd_phys->dd_origin_obj != 0) {
793 ds->ds_dir->dd_phys->dd_origin_obj, FTAG, &origin));
802 origin->ds_dir->dd_phys->dd_clones, ds->ds_object, tx));
838 dsl_dataset_t *ds;
844 /* create the origin dir, ds, & snap-ds */
847 VERIFY0(dsl_dataset_hold_obj(dp, dsobj, FTAG, &ds));
848 dsl_dataset_snapshot_sync_impl(ds, ORIGIN_DIR_NAME, tx);
849 VERIFY0(dsl_dataset_hold_obj(dp, ds->ds_phys->ds_prev_snap_obj,
851 dsl_dataset_rele(ds, FTAG);