mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu: refactor functions with removed driver if possible
Signed-off-by: Kristina Hanicova <khanicov@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com> Signed-off-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
203e74ff42
commit
42543a083a
@ -6081,8 +6081,7 @@ qemuDomainObjExitMonitor(virDomainObj *obj)
|
|||||||
|
|
||||||
void qemuDomainObjEnterMonitor(virDomainObj *obj)
|
void qemuDomainObjEnterMonitor(virDomainObj *obj)
|
||||||
{
|
{
|
||||||
ignore_value(qemuDomainObjEnterMonitorInternal(obj,
|
ignore_value(qemuDomainObjEnterMonitorInternal(obj, VIR_ASYNC_JOB_NONE));
|
||||||
VIR_ASYNC_JOB_NONE));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -184,8 +184,8 @@ qemuAutostartDomain(virDomainObj *vm,
|
|||||||
virResetLastError();
|
virResetLastError();
|
||||||
if (vm->autostart &&
|
if (vm->autostart &&
|
||||||
!virDomainObjIsActive(vm)) {
|
!virDomainObjIsActive(vm)) {
|
||||||
if (qemuProcessBeginJob(vm,
|
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_START,
|
||||||
VIR_DOMAIN_JOB_OPERATION_START, flags) < 0) {
|
flags) < 0) {
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("Failed to start job on VM '%s': %s"),
|
_("Failed to start job on VM '%s': %s"),
|
||||||
vm->def->name, virGetLastErrorMessage());
|
vm->def->name, virGetLastErrorMessage());
|
||||||
@ -1623,8 +1623,7 @@ static virDomainPtr qemuDomainCreateXML(virConnectPtr conn,
|
|||||||
NULL)))
|
NULL)))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_START,
|
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_START, flags) < 0) {
|
||||||
flags) < 0) {
|
|
||||||
qemuDomainRemoveInactive(driver, vm);
|
qemuDomainRemoveInactive(driver, vm);
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
@ -1784,8 +1783,7 @@ qemuDomainShutdownFlagsAgent(virDomainObj *vm,
|
|||||||
int agentFlag = isReboot ? QEMU_AGENT_SHUTDOWN_REBOOT :
|
int agentFlag = isReboot ? QEMU_AGENT_SHUTDOWN_REBOOT :
|
||||||
QEMU_AGENT_SHUTDOWN_POWERDOWN;
|
QEMU_AGENT_SHUTDOWN_POWERDOWN;
|
||||||
|
|
||||||
if (qemuDomainObjBeginAgentJob(vm,
|
if (qemuDomainObjBeginAgentJob(vm, VIR_AGENT_JOB_MODIFY) < 0)
|
||||||
VIR_AGENT_JOB_MODIFY) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (virDomainObjGetState(vm, NULL) != VIR_DOMAIN_RUNNING) {
|
if (virDomainObjGetState(vm, NULL) != VIR_DOMAIN_RUNNING) {
|
||||||
@ -1913,8 +1911,7 @@ qemuDomainRebootAgent(virDomainObj *vm,
|
|||||||
if (!isReboot)
|
if (!isReboot)
|
||||||
agentFlag = QEMU_AGENT_SHUTDOWN_POWERDOWN;
|
agentFlag = QEMU_AGENT_SHUTDOWN_POWERDOWN;
|
||||||
|
|
||||||
if (qemuDomainObjBeginAgentJob(vm,
|
if (qemuDomainObjBeginAgentJob(vm, VIR_AGENT_JOB_MODIFY) < 0)
|
||||||
VIR_AGENT_JOB_MODIFY) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (!qemuDomainAgentAvailable(vm, agentForced))
|
if (!qemuDomainAgentAvailable(vm, agentForced))
|
||||||
@ -1941,8 +1938,7 @@ qemuDomainRebootMonitor(virDomainObj *vm,
|
|||||||
qemuDomainObjPrivate *priv = vm->privateData;
|
qemuDomainObjPrivate *priv = vm->privateData;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
|
|
||||||
if (qemuDomainObjBeginJob(vm,
|
if (qemuDomainObjBeginJob(vm, VIR_JOB_MODIFY) < 0)
|
||||||
VIR_JOB_MODIFY) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (virDomainObjCheckActive(vm) < 0)
|
if (virDomainObjCheckActive(vm) < 0)
|
||||||
@ -3221,8 +3217,7 @@ qemuDomainCoreDumpWithFormat(virDomainPtr dom,
|
|||||||
if (virDomainCoreDumpWithFormatEnsureACL(dom->conn, vm->def) < 0)
|
if (virDomainCoreDumpWithFormatEnsureACL(dom->conn, vm->def) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (qemuDomainObjBeginAsyncJob(vm,
|
if (qemuDomainObjBeginAsyncJob(vm, VIR_ASYNC_JOB_DUMP,
|
||||||
VIR_ASYNC_JOB_DUMP,
|
|
||||||
VIR_DOMAIN_JOB_OPERATION_DUMP,
|
VIR_DOMAIN_JOB_OPERATION_DUMP,
|
||||||
flags) < 0)
|
flags) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
@ -3460,8 +3455,7 @@ processWatchdogEvent(virQEMUDriver *driver,
|
|||||||
|
|
||||||
switch (action) {
|
switch (action) {
|
||||||
case VIR_DOMAIN_WATCHDOG_ACTION_DUMP:
|
case VIR_DOMAIN_WATCHDOG_ACTION_DUMP:
|
||||||
if (qemuDomainObjBeginAsyncJob(vm,
|
if (qemuDomainObjBeginAsyncJob(vm, VIR_ASYNC_JOB_DUMP,
|
||||||
VIR_ASYNC_JOB_DUMP,
|
|
||||||
VIR_DOMAIN_JOB_OPERATION_DUMP,
|
VIR_DOMAIN_JOB_OPERATION_DUMP,
|
||||||
flags) < 0) {
|
flags) < 0) {
|
||||||
return;
|
return;
|
||||||
@ -4268,8 +4262,7 @@ static void qemuProcessEventHandler(void *data, void *opaque)
|
|||||||
processEvent->action);
|
processEvent->action);
|
||||||
break;
|
break;
|
||||||
case QEMU_PROCESS_EVENT_BLOCK_JOB:
|
case QEMU_PROCESS_EVENT_BLOCK_JOB:
|
||||||
processBlockJobEvent(vm,
|
processBlockJobEvent(vm, processEvent->data,
|
||||||
processEvent->data,
|
|
||||||
processEvent->action,
|
processEvent->action,
|
||||||
processEvent->status);
|
processEvent->status);
|
||||||
break;
|
break;
|
||||||
@ -6040,8 +6033,7 @@ qemuDomainRestoreInternal(virConnectPtr conn,
|
|||||||
priv->hookRun = true;
|
priv->hookRun = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_RESTORE,
|
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_RESTORE, flags) < 0)
|
||||||
flags) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
ret = qemuSaveImageStartVM(conn, driver, vm, &fd, data, path,
|
ret = qemuSaveImageStartVM(conn, driver, vm, &fd, data, path,
|
||||||
@ -6650,8 +6642,7 @@ qemuDomainCreateWithFlags(virDomainPtr dom, unsigned int flags)
|
|||||||
if (virDomainCreateWithFlagsEnsureACL(dom->conn, vm->def) < 0)
|
if (virDomainCreateWithFlagsEnsureACL(dom->conn, vm->def) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_START,
|
if (qemuProcessBeginJob(vm, VIR_DOMAIN_JOB_OPERATION_START, flags) < 0)
|
||||||
flags) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (virDomainObjIsActive(vm)) {
|
if (virDomainObjIsActive(vm)) {
|
||||||
@ -7001,8 +6992,7 @@ qemuDomainAttachDeviceLive(virDomainObj *vm,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DEVICE_SHMEM:
|
case VIR_DOMAIN_DEVICE_SHMEM:
|
||||||
ret = qemuDomainAttachShmemDevice(vm,
|
ret = qemuDomainAttachShmemDevice(vm, dev->data.shmem);
|
||||||
dev->data.shmem);
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
alias = dev->data.shmem->info.alias;
|
alias = dev->data.shmem->info.alias;
|
||||||
dev->data.shmem = NULL;
|
dev->data.shmem = NULL;
|
||||||
@ -7010,8 +7000,7 @@ qemuDomainAttachDeviceLive(virDomainObj *vm,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_DEVICE_WATCHDOG:
|
case VIR_DOMAIN_DEVICE_WATCHDOG:
|
||||||
ret = qemuDomainAttachWatchdog(vm,
|
ret = qemuDomainAttachWatchdog(vm, dev->data.watchdog);
|
||||||
dev->data.watchdog);
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
alias = dev->data.watchdog->info.alias;
|
alias = dev->data.watchdog->info.alias;
|
||||||
dev->data.watchdog = NULL;
|
dev->data.watchdog = NULL;
|
||||||
@ -7293,8 +7282,7 @@ qemuDomainChangeMemoryLive(virQEMUDriver *driver G_GNUC_UNUSED,
|
|||||||
if (!qemuDomainChangeMemoryLiveValidateChange(oldDef, newDef))
|
if (!qemuDomainChangeMemoryLiveValidateChange(oldDef, newDef))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (qemuDomainChangeMemoryRequestedSize(vm,
|
if (qemuDomainChangeMemoryRequestedSize(vm, newDef->info.alias,
|
||||||
newDef->info.alias,
|
|
||||||
newDef->requestedsize) < 0)
|
newDef->requestedsize) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
@ -13092,8 +13080,7 @@ qemuDomainMigrateGetMaxDowntime(virDomainPtr dom,
|
|||||||
if (virDomainObjCheckActive(vm) < 0)
|
if (virDomainObjCheckActive(vm) < 0)
|
||||||
goto endjob;
|
goto endjob;
|
||||||
|
|
||||||
if (qemuMigrationParamsFetch(vm, VIR_ASYNC_JOB_NONE,
|
if (qemuMigrationParamsFetch(vm, VIR_ASYNC_JOB_NONE, &migParams) < 0)
|
||||||
&migParams) < 0)
|
|
||||||
goto endjob;
|
goto endjob;
|
||||||
|
|
||||||
if ((rc = qemuMigrationParamsGetULL(migParams,
|
if ((rc = qemuMigrationParamsGetULL(migParams,
|
||||||
@ -13316,8 +13303,7 @@ qemuDomainMigrationGetPostcopyBandwidth(virDomainObj *vm,
|
|||||||
if (virDomainObjCheckActive(vm) < 0)
|
if (virDomainObjCheckActive(vm) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (qemuMigrationParamsFetch(vm, VIR_ASYNC_JOB_NONE,
|
if (qemuMigrationParamsFetch(vm, VIR_ASYNC_JOB_NONE, &migParams) < 0)
|
||||||
&migParams) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if ((rc = qemuMigrationParamsGetULL(migParams,
|
if ((rc = qemuMigrationParamsGetULL(migParams,
|
||||||
@ -19065,8 +19051,7 @@ qemuDomainGetFSInfoAgent(virDomainObj *vm,
|
|||||||
int ret = -1;
|
int ret = -1;
|
||||||
qemuAgent *agent;
|
qemuAgent *agent;
|
||||||
|
|
||||||
if (qemuDomainObjBeginAgentJob(vm,
|
if (qemuDomainObjBeginAgentJob(vm, VIR_AGENT_JOB_QUERY) < 0)
|
||||||
VIR_AGENT_JOB_QUERY) < 0)
|
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (virDomainObjCheckActive(vm) < 0)
|
if (virDomainObjCheckActive(vm) < 0)
|
||||||
@ -20616,8 +20601,7 @@ qemuDomainGetGuestInfo(virDomainPtr dom,
|
|||||||
if (virDomainGetGuestInfoEnsureACL(dom->conn, vm->def) < 0)
|
if (virDomainGetGuestInfoEnsureACL(dom->conn, vm->def) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (qemuDomainObjBeginAgentJob(vm,
|
if (qemuDomainObjBeginAgentJob(vm, VIR_AGENT_JOB_QUERY) < 0)
|
||||||
VIR_AGENT_JOB_QUERY) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (!qemuDomainAgentAvailable(vm, true))
|
if (!qemuDomainAgentAvailable(vm, true))
|
||||||
|
@ -1904,8 +1904,7 @@ int qemuDomainAttachRedirdevDevice(virQEMUDriver *driver,
|
|||||||
ignore_value(qemuMonitorDetachCharDev(priv->mon, charAlias));
|
ignore_value(qemuMonitorDetachCharDev(priv->mon, charAlias));
|
||||||
qemuDomainObjExitMonitor(vm);
|
qemuDomainObjExitMonitor(vm);
|
||||||
virErrorRestore(&orig_err);
|
virErrorRestore(&orig_err);
|
||||||
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE,
|
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE, secAlias, tlsAlias);
|
||||||
secAlias, tlsAlias);
|
|
||||||
goto audit;
|
goto audit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2197,8 +2196,7 @@ qemuDomainAttachChrDevice(virQEMUDriver *driver,
|
|||||||
qemuDomainObjExitMonitor(vm);
|
qemuDomainObjExitMonitor(vm);
|
||||||
virErrorRestore(&orig_err);
|
virErrorRestore(&orig_err);
|
||||||
|
|
||||||
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE,
|
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE, secAlias, tlsAlias);
|
||||||
secAlias, tlsAlias);
|
|
||||||
goto audit;
|
goto audit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2303,8 +2301,7 @@ qemuDomainAttachRNGDevice(virQEMUDriver *driver,
|
|||||||
qemuDomainObjExitMonitor(vm);
|
qemuDomainObjExitMonitor(vm);
|
||||||
virErrorRestore(&orig_err);
|
virErrorRestore(&orig_err);
|
||||||
|
|
||||||
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE,
|
qemuDomainDelTLSObjects(vm, VIR_ASYNC_JOB_NONE, secAlias, tlsAlias);
|
||||||
secAlias, tlsAlias);
|
|
||||||
goto audit;
|
goto audit;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2405,8 +2402,7 @@ qemuDomainAttachMemory(virQEMUDriver *driver,
|
|||||||
mem = NULL;
|
mem = NULL;
|
||||||
|
|
||||||
/* this step is best effort, removing the device would be so much trouble */
|
/* this step is best effort, removing the device would be so much trouble */
|
||||||
ignore_value(qemuDomainUpdateMemoryDeviceInfo(vm,
|
ignore_value(qemuDomainUpdateMemoryDeviceInfo(vm, VIR_ASYNC_JOB_NONE));
|
||||||
VIR_ASYNC_JOB_NONE));
|
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
|
@ -603,8 +603,7 @@ qemuMigrationDstStartNBDServer(virQEMUDriver *driver,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_IN) < 0)
|
||||||
VIR_ASYNC_JOB_MIGRATION_IN) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
if (!server_started) {
|
if (!server_started) {
|
||||||
@ -643,8 +642,7 @@ qemuMigrationDstStopNBDServer(virDomainObj *vm,
|
|||||||
if (!mig->nbd)
|
if (!mig->nbd)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_IN) < 0)
|
||||||
VIR_ASYNC_JOB_MIGRATION_IN) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (qemuMonitorNBDServerStop(priv->mon) < 0)
|
if (qemuMonitorNBDServerStop(priv->mon) < 0)
|
||||||
@ -1049,8 +1047,7 @@ qemuMigrationSrcNBDStorageCopyBlockdev(virDomainObj *vm,
|
|||||||
false)))
|
false)))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
mon_ret = qemuBlockStorageSourceAttachApply(qemuDomainGetMonitor(vm), data);
|
mon_ret = qemuBlockStorageSourceAttachApply(qemuDomainGetMonitor(vm), data);
|
||||||
@ -1097,8 +1094,7 @@ qemuMigrationSrcNBDStorageCopyDriveMirror(virDomainObj *vm,
|
|||||||
diskAlias);
|
diskAlias);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
mon_ret = qemuMonitorDriveMirror(qemuDomainGetMonitor(vm),
|
mon_ret = qemuMonitorDriveMirror(qemuDomainGetMonitor(vm),
|
||||||
@ -1156,8 +1152,7 @@ qemuMigrationSrcNBDStorageCopyOne(virDomainObj *vm,
|
|||||||
|
|
||||||
if (flags & VIR_MIGRATE_TLS ||
|
if (flags & VIR_MIGRATE_TLS ||
|
||||||
virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV)) {
|
virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV)) {
|
||||||
rc = qemuMigrationSrcNBDStorageCopyBlockdev(vm,
|
rc = qemuMigrationSrcNBDStorageCopyBlockdev(vm, disk, jobname,
|
||||||
disk, jobname,
|
|
||||||
sourcename, persistjob,
|
sourcename, persistjob,
|
||||||
host, port, socket,
|
host, port, socket,
|
||||||
mirror_speed,
|
mirror_speed,
|
||||||
@ -2078,8 +2073,7 @@ qemuMigrationSrcWaitForCompletion(virDomainObj *vm,
|
|||||||
|
|
||||||
jobData->status = VIR_DOMAIN_JOB_STATUS_MIGRATING;
|
jobData->status = VIR_DOMAIN_JOB_STATUS_MIGRATING;
|
||||||
|
|
||||||
while ((rv = qemuMigrationAnyCompleted(vm, asyncJob,
|
while ((rv = qemuMigrationAnyCompleted(vm, asyncJob, dconn, flags)) != 1) {
|
||||||
dconn, flags)) != 1) {
|
|
||||||
if (rv < 0)
|
if (rv < 0)
|
||||||
return rv;
|
return rv;
|
||||||
|
|
||||||
@ -2119,8 +2113,7 @@ qemuMigrationDstWaitForCompletion(virDomainObj *vm,
|
|||||||
if (postcopy)
|
if (postcopy)
|
||||||
flags = QEMU_MIGRATION_COMPLETED_POSTCOPY;
|
flags = QEMU_MIGRATION_COMPLETED_POSTCOPY;
|
||||||
|
|
||||||
while ((rv = qemuMigrationAnyCompleted(vm, asyncJob,
|
while ((rv = qemuMigrationAnyCompleted(vm, asyncJob, NULL, flags)) != 1) {
|
||||||
NULL, flags)) != 1) {
|
|
||||||
if (rv < 0 || virDomainObjWait(vm) < 0)
|
if (rv < 0 || virDomainObjWait(vm) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -2208,8 +2201,7 @@ qemuMigrationSrcGraphicsRelocate(virDomainObj *vm,
|
|||||||
if (port <= 0 && tlsPort <= 0)
|
if (port <= 0 && tlsPort <= 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_OUT) == 0) {
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT) == 0) {
|
|
||||||
qemuDomainJobPrivate *jobPriv = priv->job.privateData;
|
qemuDomainJobPrivate *jobPriv = priv->job.privateData;
|
||||||
|
|
||||||
rc = qemuMonitorGraphicsRelocate(priv->mon, type, listenAddress,
|
rc = qemuMonitorGraphicsRelocate(priv->mon, type, listenAddress,
|
||||||
@ -2895,8 +2887,7 @@ qemuMigrationSrcBegin(virConnectPtr conn,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((flags & VIR_MIGRATE_CHANGE_PROTECTION)) {
|
if ((flags & VIR_MIGRATE_CHANGE_PROTECTION)) {
|
||||||
if (qemuMigrationJobStart(vm, VIR_ASYNC_JOB_MIGRATION_OUT,
|
if (qemuMigrationJobStart(vm, VIR_ASYNC_JOB_MIGRATION_OUT, flags) < 0)
|
||||||
flags) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
asyncJob = VIR_ASYNC_JOB_MIGRATION_OUT;
|
asyncJob = VIR_ASYNC_JOB_MIGRATION_OUT;
|
||||||
} else {
|
} else {
|
||||||
@ -4903,8 +4894,7 @@ qemuMigrationSrcRun(virQEMUDriver *driver,
|
|||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT) < 0)
|
|
||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
if (priv->job.abortJob) {
|
if (priv->job.abortJob) {
|
||||||
@ -4945,8 +4935,7 @@ qemuMigrationSrcRun(virQEMUDriver *driver,
|
|||||||
if (flags & VIR_MIGRATE_POSTCOPY)
|
if (flags & VIR_MIGRATE_POSTCOPY)
|
||||||
waitFlags |= QEMU_MIGRATION_COMPLETED_POSTCOPY;
|
waitFlags |= QEMU_MIGRATION_COMPLETED_POSTCOPY;
|
||||||
|
|
||||||
rc = qemuMigrationSrcWaitForCompletion(vm,
|
rc = qemuMigrationSrcWaitForCompletion(vm, VIR_ASYNC_JOB_MIGRATION_OUT,
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT,
|
|
||||||
dconn, waitFlags);
|
dconn, waitFlags);
|
||||||
if (rc == -2)
|
if (rc == -2)
|
||||||
goto error;
|
goto error;
|
||||||
@ -5047,8 +5036,7 @@ qemuMigrationSrcRun(virQEMUDriver *driver,
|
|||||||
|
|
||||||
if (cancel &&
|
if (cancel &&
|
||||||
priv->job.current->status != VIR_DOMAIN_JOB_STATUS_HYPERVISOR_COMPLETED &&
|
priv->job.current->status != VIR_DOMAIN_JOB_STATUS_HYPERVISOR_COMPLETED &&
|
||||||
qemuDomainObjEnterMonitorAsync(vm,
|
qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_MIGRATION_OUT) == 0) {
|
||||||
VIR_ASYNC_JOB_MIGRATION_OUT) == 0) {
|
|
||||||
qemuMonitorMigrateCancel(priv->mon);
|
qemuMonitorMigrateCancel(priv->mon);
|
||||||
qemuDomainObjExitMonitor(vm);
|
qemuDomainObjExitMonitor(vm);
|
||||||
}
|
}
|
||||||
@ -6186,8 +6174,7 @@ qemuMigrationSrcPerformPhase(virQEMUDriver *driver,
|
|||||||
|
|
||||||
/* If we didn't start the job in the begin phase, start it now. */
|
/* If we didn't start the job in the begin phase, start it now. */
|
||||||
if (!(flags & VIR_MIGRATE_CHANGE_PROTECTION)) {
|
if (!(flags & VIR_MIGRATE_CHANGE_PROTECTION)) {
|
||||||
if (qemuMigrationJobStart(vm, VIR_ASYNC_JOB_MIGRATION_OUT,
|
if (qemuMigrationJobStart(vm, VIR_ASYNC_JOB_MIGRATION_OUT, flags) < 0)
|
||||||
flags) < 0)
|
|
||||||
return ret;
|
return ret;
|
||||||
} else if (!qemuMigrationJobIsActive(vm, VIR_ASYNC_JOB_MIGRATION_OUT)) {
|
} else if (!qemuMigrationJobIsActive(vm, VIR_ASYNC_JOB_MIGRATION_OUT)) {
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -311,8 +311,7 @@ qemuSnapshotCreateActiveInternal(virQEMUDriver *driver,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (qemuDomainObjEnterMonitorAsync(vm,
|
if (qemuDomainObjEnterMonitorAsync(vm, VIR_ASYNC_JOB_SNAPSHOT) < 0) {
|
||||||
VIR_ASYNC_JOB_SNAPSHOT) < 0) {
|
|
||||||
resume = false;
|
resume = false;
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user