if (need_revoke)
qemuDomainStorageSourceChainAccessRevoke(driver, vm, mirror);
- ignore_value(qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE));
+ qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE);
}
if (need_unlink && virStorageSourceUnlink(mirror) < 0)
VIR_WARN("%s", _("unable to remove just-created copy target"));
* Removes the managed PR object from @vm if the configuration does not require
* it any more.
*/
-int
+void
qemuHotplugRemoveManagedPR(virDomainObj *vm,
virDomainAsyncJob asyncJob)
{
qemuDomainObjPrivate *priv = vm->privateData;
virErrorPtr orig_err;
- int ret = -1;
if (qemuDomainDefHasManagedPR(vm))
- return 0;
+ return;
virErrorPreserveLast(&orig_err);
if (qemuDomainObjEnterMonitorAsync(vm, asyncJob) < 0)
goto cleanup;
+
ignore_value(qemuMonitorDelObject(priv->mon, qemuDomainGetManagedPRAlias(),
false));
qemuDomainObjExitMonitor(vm);
qemuProcessKillManagedPRDaemon(vm);
- ret = 0;
cleanup:
virErrorRestore(&orig_err);
- return ret;
}
/* remove PR manager object if unneeded */
if (managedpr)
- ignore_value(qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE));
+ qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE);
/* revert old image do the disk definition */
if (oldsrc)
ignore_value(qemuDomainStorageSourceChainAccessRevoke(driver, vm, disk->src));
if (virStorageSourceChainHasManagedPR(disk->src))
- ignore_value(qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE));
+ qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE);
}
qemuDomainSecretDiskDestroy(disk);
qemuDomainCleanupStorageSourceFD(disk->src);
if (diskBackend)
qemuDomainStorageSourceChainAccessRevoke(driver, vm, disk->src);
- if (virStorageSourceChainHasManagedPR(disk->src) &&
- qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE) < 0)
- goto cleanup;
+ if (virStorageSourceChainHasManagedPR(disk->src))
+ qemuHotplugRemoveManagedPR(vm, VIR_ASYNC_JOB_NONE);
qemuNbdkitStopStorageSource(disk->src, vm, true);