1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-20 07:59:00 +00:00

qemu_block: add async domain job support to qemuBlockPivot

This will allow to use it while having async domain job active which we
will use when deleting external snapshots.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
Pavel Hrdina 2022-12-05 12:53:34 +01:00
parent ef1c609a16
commit 9a0ce66503
3 changed files with 5 additions and 2 deletions

View File

@ -3402,6 +3402,7 @@ qemuBlockCommit(virDomainObj *vm,
int
qemuBlockPivot(virDomainObj *vm,
qemuBlockJobData *job,
virDomainAsyncJob asyncJob,
virDomainDiskDef *disk)
{
g_autoptr(qemuBlockStorageSourceChainData) chainattachdata = NULL;
@ -3487,7 +3488,8 @@ qemuBlockPivot(virDomainObj *vm,
break;
}
qemuDomainObjEnterMonitor(vm);
if (qemuDomainObjEnterMonitorAsync(vm, asyncJob) < 0)
return -1;
if (chainattachdata) {
if ((rc = qemuBlockStorageSourceChainAttach(priv->mon, chainattachdata)) == 0) {

View File

@ -290,4 +290,5 @@ qemuBlockCommit(virDomainObj *vm,
int
qemuBlockPivot(virDomainObj *vm,
qemuBlockJobData *job,
virDomainAsyncJob asyncJob,
virDomainDiskDef *disk);

View File

@ -14158,7 +14158,7 @@ qemuDomainBlockJobAbort(virDomainPtr dom,
qemuBlockJobSyncBegin(job);
if (pivot) {
if ((ret = qemuBlockPivot(vm, job, disk)) < 0)
if ((ret = qemuBlockPivot(vm, job, VIR_ASYNC_JOB_NONE, disk)) < 0)
goto endjob;
} else {
qemuDomainObjEnterMonitor(vm);