mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-20 07:59:00 +00:00
qemu: snapshot: Move all cleanup of snapshot disk data to qemuDomainSnapshotDiskDataFree
qemuDomainSnapshotDiskDataFree also removes the resources associated with the disk data. Move the unlinking of the just-created file so that we can unify the cleanup paths. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
acda184236
commit
a7087c929e
@ -15049,6 +15049,12 @@ qemuDomainSnapshotDiskDataCleanup(qemuDomainSnapshotDiskDataPtr data,
|
||||
/* on success of the snapshot the 'src' and 'persistsrc' properties will
|
||||
* be set to NULL by qemuDomainSnapshotUpdateDiskSources */
|
||||
if (data[i].src) {
|
||||
if (data[i].created &&
|
||||
virStorageFileUnlink(data[i].src) < 0) {
|
||||
VIR_WARN("Unable to remove just-created %s",
|
||||
NULLSTR(data[i].src->path));
|
||||
}
|
||||
|
||||
if (data[i].initialized)
|
||||
virStorageFileDeinit(data[i].src);
|
||||
|
||||
@ -15292,14 +15298,6 @@ qemuDomainSnapshotCreateDiskActive(virQEMUDriverPtr driver,
|
||||
error:
|
||||
if (ret < 0) {
|
||||
virErrorPreserveLast(&orig_err);
|
||||
for (i = 0; i < ndiskdata; i++) {
|
||||
if (diskdata[i].prepared)
|
||||
qemuDomainStorageSourceAccessRevoke(driver, vm, diskdata[i].src);
|
||||
|
||||
if (diskdata[i].created &&
|
||||
virStorageFileUnlink(diskdata[i].src) < 0)
|
||||
VIR_WARN("Unable to remove just-created %s", diskdata[i].src->path);
|
||||
}
|
||||
} else {
|
||||
/* on successful snapshot we need to remove locks from the now-old
|
||||
* disks and if the VM is paused release locks on the images since qemu
|
||||
|
Loading…
x
Reference in New Issue
Block a user