Lines Matching refs:ha
4396 struct holdarg *ha = arg; in zfs_hold_one() local
4401 "%s@%s", zhp->zfs_name, ha->snapname); in zfs_hold_one()
4404 fnvlist_add_string(ha->nvl, name, ha->tag); in zfs_hold_one()
4406 if (ha->recursive) in zfs_hold_one()
4407 rv = zfs_iter_filesystems(zhp, zfs_hold_one, ha); in zfs_hold_one()
4417 struct holdarg ha; in zfs_hold() local
4419 ha.nvl = fnvlist_alloc(); in zfs_hold()
4420 ha.snapname = snapname; in zfs_hold()
4421 ha.tag = tag; in zfs_hold()
4422 ha.recursive = recursive; in zfs_hold()
4423 (void) zfs_hold_one(zfs_handle_dup(zhp), &ha); in zfs_hold()
4425 if (nvlist_empty(ha.nvl)) { in zfs_hold()
4428 fnvlist_free(ha.nvl); in zfs_hold()
4438 ret = zfs_hold_nvl(zhp, cleanup_fd, ha.nvl); in zfs_hold()
4439 fnvlist_free(ha.nvl); in zfs_hold()
4515 struct holdarg *ha = arg; in zfs_release_one() local
4521 "%s@%s", zhp->zfs_name, ha->snapname); in zfs_release_one()
4524 ha->error = ENOENT; in zfs_release_one()
4525 } else if (!nvlist_exists(existing_holds, ha->tag)) { in zfs_release_one()
4526 ha->error = ESRCH; in zfs_release_one()
4529 fnvlist_add_boolean(torelease, ha->tag); in zfs_release_one()
4530 fnvlist_add_nvlist(ha->nvl, name, torelease); in zfs_release_one()
4534 if (ha->recursive) in zfs_release_one()
4535 rv = zfs_iter_filesystems(zhp, zfs_release_one, ha); in zfs_release_one()
4545 struct holdarg ha; in zfs_release() local
4551 ha.nvl = fnvlist_alloc(); in zfs_release()
4552 ha.snapname = snapname; in zfs_release()
4553 ha.tag = tag; in zfs_release()
4554 ha.recursive = recursive; in zfs_release()
4555 ha.error = 0; in zfs_release()
4556 (void) zfs_release_one(zfs_handle_dup(zhp), &ha); in zfs_release()
4558 if (nvlist_empty(ha.nvl)) { in zfs_release()
4559 fnvlist_free(ha.nvl); in zfs_release()
4560 ret = ha.error; in zfs_release()
4573 ret = lzc_release(ha.nvl, &errors); in zfs_release()
4574 fnvlist_free(ha.nvl); in zfs_release()