mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-27 04:32:16 +03:00
Illumos #3829
3829 fix for 3740 changed behavior of zfs destroy/hold/release ioctl Reviewed by: Matt Amdur <matt.amdur@delphix.com> Reviewed by: Christopher Siden <christopher.siden@delphix.com> Approved by: Richard Lowe <richlowe@richlowe.net> References: https://www.illumos.org/issues/3829 illumos/illumos-gate@bb6e70758d Ported-by: Richard Yao <ryao@gentoo.org> Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Issue #1775
This commit is contained in:
committed by
Brian Behlendorf
parent
34ffbed88c
commit
1a077756e8
@@ -255,11 +255,8 @@ lzc_snapshot(nvlist_t *snaps, nvlist_t *props, nvlist_t **errlist)
|
||||
* marked for deferred destruction, and will be destroyed when the last hold
|
||||
* or clone is removed/destroyed.
|
||||
*
|
||||
* The return value will be ENOENT if none of the snapshots existed.
|
||||
*
|
||||
* The return value will be 0 if all snapshots were destroyed (or marked for
|
||||
* later destruction if 'defer' is set) or didn't exist to begin with and
|
||||
* at least one snapshot was destroyed.
|
||||
* later destruction if 'defer' is set) or didn't exist to begin with.
|
||||
*
|
||||
* Otherwise the return value will be the errno of a (unspecified) snapshot
|
||||
* that failed, no snapshots will be destroyed, and the errlist will have an
|
||||
@@ -350,15 +347,10 @@ lzc_exists(const char *dataset)
|
||||
* or imported.
|
||||
*
|
||||
* Holds for snapshots which don't exist will be skipped and have an entry
|
||||
* added to errlist, but will not cause an overall failure, except in the
|
||||
* case that all holds where skipped.
|
||||
* added to errlist, but will not cause an overall failure.
|
||||
*
|
||||
* The return value will be ENOENT if none of the snapshots for the requested
|
||||
* holds existed.
|
||||
*
|
||||
* The return value will be 0 if the nvl holds was empty or all holds, for
|
||||
* snapshots that existed, were succesfully created and at least one hold
|
||||
* was created.
|
||||
* The return value will be 0 if all holds, for snapshots that existed,
|
||||
* were succesfully created.
|
||||
*
|
||||
* Otherwise the return value will be the errno of a (unspecified) hold that
|
||||
* failed and no holds will be created.
|
||||
@@ -402,13 +394,10 @@ lzc_hold(nvlist_t *holds, int cleanup_fd, nvlist_t **errlist)
|
||||
* The value is a nvlist whose keys are the holds to remove.
|
||||
*
|
||||
* Holds which failed to release because they didn't exist will have an entry
|
||||
* added to errlist, but will not cause an overall failure, except in the
|
||||
* case that all releases where skipped.
|
||||
*
|
||||
* The return value will be ENOENT if none of the specified holds existed.
|
||||
* added to errlist, but will not cause an overall failure.
|
||||
*
|
||||
* The return value will be 0 if the nvl holds was empty or all holds that
|
||||
* existed, were successfully removed and at least one hold was removed.
|
||||
* existed, were successfully removed.
|
||||
*
|
||||
* Otherwise the return value will be the errno of a (unspecified) hold that
|
||||
* failed to release and no holds will be released.
|
||||
|
||||
Reference in New Issue
Block a user