rc = qemuBlockStorageSourceAttachApply(priv->mon, dd->crdata->srcdata[0]);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
return -1;
}
if (rc == 0)
rc = qemuMonitorTransaction(priv->mon, &actions);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
goto endjob;
job_started = true;
rc = qemuMonitorGetJobInfo(priv->mon, &blockjobs, &nblockjobs);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto cleanup;
/* count in completed jobs */
data = qemuMonitorQueryNamedBlockNodes(qemuDomainGetMonitor(vm));
blockstats = qemuMonitorQueryBlockstats(qemuDomainGetMonitor(vm));
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !data || !blockstats)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (!data || !blockstats)
return -1;
if (!(disktable = qemuBlockNodeNameGetBackingChain(data, blockstats)))
rc = qemuMonitorBlockdevCreate(priv->mon, job->name, props);
props = NULL;
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
goto cleanup;
qemuBlockJobStarted(job, vm);
rc = qemuBlockStorageSourceAttachApplyStorageDeps(priv->mon, data);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
goto cleanup;
if (qemuBlockStorageSourceCreateStorage(vm, src, chain, asyncJob) < 0)
if (rc == 0)
rc = qemuBlockStorageSourceAttachApplyFormatDeps(priv->mon, data);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
goto cleanup;
if (qemuBlockStorageSourceCreateFormat(vm, src, backingStore, chain,
rc = qemuBlockStorageSourceAttachApplyFormat(priv->mon, data);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
goto cleanup;
ret = 0;
blockNamedNodeData = qemuMonitorBlockGetNamedNodeData(priv->mon, supports_flat);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !blockNamedNodeData)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (!blockNamedNodeData)
return NULL;
return g_steal_pointer(&blockNamedNodeData);
rc = qemuBlockReopenFormatMon(priv->mon, src);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
return 0;
rc = qemuMonitorGetJobInfo(priv->mon, &jobinfo, &njobinfo);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto cleanup;
for (i = 0; i < njobinfo; i++) {
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorTransaction(qemuDomainGetMonitor(vm), &actions);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0) {
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0) {
qemuCheckpointRollbackMetadata(vm, chk);
return NULL;
}
if (rc == 0)
rc = qemuMonitorTransaction(priv->mon, &mergeactions);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
/* now do a final refresh */
rc = qemuMonitorTransaction(priv->mon, &cleanupactions);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
/* update disks */
QEMU_CAPS_QUERY_CPUS_FAST);
haltedmap = qemuMonitorGetCpuHalted(qemuDomainGetMonitor(vm), maxvcpus,
fast);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !haltedmap)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (!haltedmap)
return -1;
for (i = 0; i < maxvcpus; i++) {
priv = vm->privateData;
qemuDomainObjEnterMonitor(driver, vm);
r = qemuMonitorSetBalloon(priv->mon, newmem);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || r < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (r < 0)
goto endjob;
/* Lack of balloon support is a fatal error */
ret = qemuMonitorDumpToFd(priv->mon, fd, dumpformat, detach);
- if ((qemuDomainObjExitMonitor(driver, vm) < 0) || ret < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (ret < 0)
return -1;
if (detach)
rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, blockstats);
}
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || nstats < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (nstats < 0 || rc < 0)
goto cleanup;
*retstats = g_new0(qemuBlockStats, 1);
rc = qemuMonitorQueryDump(priv->mon, &stats);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
jobInfo->stats.dump = stats;
} else {
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorSetMigrationDowntime(priv->mon, downtime);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
}
} else {
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorGetMigrationCacheSize(priv->mon, cacheSize);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
}
} else {
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorSetMigrationCacheSize(priv->mon, cacheSize);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
}
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorSetMigrationSpeed(priv->mon, bandwidth);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
}
qemuDomainObjEnterMonitor(driver, vm);
blockjobstats = qemuMonitorGetAllBlockJobInfo(qemuDomainGetMonitor(vm), true);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !blockjobstats)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (!blockjobstats)
goto endjob;
rawInfo = g_hash_table_lookup(blockjobstats, job->name);
topPath, nodetop, basePath, nodebase,
backingPath, speed);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || ret < 0) {
- ret = -1;
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (ret < 0)
goto endjob;
- }
if (mirror) {
disk->mirror = g_steal_pointer(&mirror);
qemuDomainObjEnterMonitor(driver, vm);
rv = qemuMonitorGetCurrentMachineInfo(priv->mon, &info);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 ||
- rv < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rv < 0)
return -1;
*wakeupSupported = info.wakeupSuspendSupport;
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorSetBlockThreshold(priv->mon, nodename, threshold);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto endjob;
/* we need to remember whether the threshold was registered with an explicit
QEMU_MONITOR_ACTION_WATCHDOG_KEEP,
QEMU_MONITOR_ACTION_PANIC_KEEP);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
return 0;
/* re-issue ejection command to pop out the media */
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorEjectMedia(priv->mon, driveAlias, false);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
} else {
rc = qemuMonitorAddObject(priv->mon, &props, NULL);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto cleanup;
ret = 0;
if (diskPriv->tray && disk->tray_status != VIR_DOMAIN_DISK_TRAY_OPEN) {
qemuDomainObjEnterMonitor(driver, vm);
rc = qemuMonitorBlockdevTrayOpen(priv->mon, diskPriv->qomName, force);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
if (!force && qemuHotplugWaitForTrayEject(vm, disk) < 0)
if (rc < 0 && newbackend)
qemuBlockStorageSourceChainDetach(priv->mon, newbackend);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
return 0;
ignore_value(qemuMonitorCloseFileHandle(priv->mon, vhostfdName));
if (removeextension)
ignore_value(qemuDomainDetachExtensionDevice(priv->mon, hostdev->info));
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || ret < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (ret < 0)
goto audit;
vm->def->hostdevs[vm->def->nhostdevs++] = hostdev;
* consistency on the destination so that we can force cancel the mirror */
rv = qemuMonitorBlockJobCancel(priv->mon, job->name, abortMigration);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rv < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rv < 0)
return -1;
return 0;
if (mon_ret != 0)
qemuBlockStorageSourceAttachRollback(qemuDomainGetMonitor(vm), data);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || mon_ret < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (mon_ret < 0)
return -1;
diskPriv->migrSource = g_steal_pointer(©src);
diskAlias, nbd_dest, "raw",
mirror_speed, 0, 0, mirror_shallow, true);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || mon_ret < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (mon_ret < 0)
return -1;
return 0;
rv = qemuMonitorGetMigrationStats(priv->mon, &stats, error);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rv < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rv < 0)
return -1;
jobInfo->stats.mig = stats;
rv = qemuMonitorMigrateIncoming(priv->mon, uri);
exit_monitor:
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rv < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rv < 0)
return -1;
if (asyncJob == QEMU_ASYNC_JOB_MIGRATION_IN) {
rc = qemuMonitorTransaction(priv->mon, &actions);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
jobPriv->migTempBitmaps = g_steal_pointer(&tmpbitmaps);
break;
}
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
goto error;
/* From this point onwards we *must* call cancel to abort the
blockinfo = qemuMonitorGetAllBlockJobInfo(priv->mon, false);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !blockinfo)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (!blockinfo)
return -1;
memset(stats, 0, sizeof(*stats));
rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats);
else
rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, stats);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
for (i = 0; i < vm->def->ndisks; i++) {
rc = qemuMonitorGetMigrationParams(priv->mon, &jsonParams);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
if (!(*migParams = qemuMigrationParamsFromJSON(jsonParams)))
rc = qemuMonitorGetMigrationCapabilities(priv->mon, &caps);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
if (!caps)
return -1;
rc = qemuMonitorGetBalloonInfo(qemuDomainGetMonitor(vm), &balloon);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
/* We want the balloon size stored in domain definition to
rc = virQEMUCapsFetchCPUModels(priv->mon, vm->def->os.arch, &models);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
*cpuModels = g_steal_pointer(&models);
rc = qemuMonitorSystemReset(priv->mon);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
return -1;
}
QEMU_MONITOR_ACTION_WATCHDOG_KEEP,
QEMU_MONITOR_ACTION_PANIC_KEEP);
- if (qemuDomainObjExitMonitor(priv->driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(priv->driver, vm);
+ if (rc < 0)
return -1;
return 0;
rc = qemuMonitorGetCPUMigratable(priv->mon, &migratable);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
if (rc == 1)
qemuDomainObjEnterMonitor(driver, vm);
blockJobs = qemuMonitorGetAllBlockJobInfo(qemuDomainGetMonitor(vm), true);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || !blockJobs)
+ qemuDomainObjExitMonitor(driver, vm);
+
+ if (!blockJobs)
goto cleanup;
if (virHashForEach(blockJobs, qemuProcessRefreshLegacyBlockjob, vm) < 0)
rc = qemuBlockStorageSourceAttachApply(qemuDomainGetMonitor(vm),
dd->crdata->srcdata[0]);
- if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
+ qemuDomainObjExitMonitor(driver, vm);
+ if (rc < 0)
return -1;
} else {
if (qemuBlockStorageSourceCreateDetectSize(blockNamedNodeData,