Update the dataset name in handle after zfs_rename #17040
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation and Context
For
zfs_rename()
, after the dataset name is successfully updated, the dataset handle that was passed tozfs_rename()
, still contains the old name, due to which, the dataset handle becomes invalid. The following operations performed using this handle result in error since the dataset with old name cannot be found anymore.changelist_rename()
does update the names in dataset handles, but those are temporary handles that were created duringchangelist_gather()
. The original handle that was used to callzfs_rename()
is not updated.Description
We should update the name in original ZFS handle after the IOCTL for rename returns success for the operation.
How Has This Been Tested?
Manually tested the rename operation for datasets and snapshots, including the recursive operation and via ZTS.
Types of changes
Checklist:
Signed-off-by
.