From 80a5dbb478f52cb3cf802ae3e98b4347390ae71c Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Mon, 7 Nov 2022 14:55:04 +0100 Subject: [PATCH] qemu: Assume QEMU_CAPS_QUERY_CURRENT_MACHINE MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Introduced in QEMU's commit of v4.0.0-rc0~202^2~3 the query-current-machine command is always available for all QEMU versions we support (4.2.0, currently). Therefore, we can assume the capability is always set and thus doesn't need to be checked for. Signed-off-by: Michal Privoznik Reviewed-by: Peter Krempa Reviewed-by: Ján Tomko --- src/qemu/qemu_driver.c | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index bcdd55b089..d10283f2ea 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -16307,12 +16307,8 @@ static int qemuDomainQueryWakeupSuspendSupport(virDomainObj *vm, bool *wakeupSupported) { - qemuDomainObjPrivate *priv = vm->privateData; int ret = -1; - if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_QUERY_CURRENT_MACHINE)) - return -1; - if (virDomainObjBeginJob(vm, VIR_JOB_QUERY) < 0) return -1; @@ -16389,19 +16385,13 @@ qemuDomainPMSuspendForDuration(virDomainPtr dom, if (!qemuDomainAgentAvailable(vm, true)) goto cleanup; - /* - * The case we want to handle here is when QEMU has the API (i.e. - * QEMU_CAPS_QUERY_CURRENT_MACHINE is set). Otherwise, do not interfere - * with the suspend process. This means that existing running domains, - * that don't know about this cap, will keep their old behavior of - * suspending 'in the dark'. - */ - if (qemuDomainQueryWakeupSuspendSupport(vm, &wakeupSupported) == 0) { - if (!wakeupSupported) { - virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", - _("Domain does not have suspend support")); - goto cleanup; - } + if (qemuDomainQueryWakeupSuspendSupport(vm, &wakeupSupported) < 0) + goto cleanup; + + if (!wakeupSupported) { + virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", + _("Domain does not have suspend support")); + goto cleanup; } if (vm->def->pm.s3 || vm->def->pm.s4) { -- 2.39.5