diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index b2622a056e..c5f144d20a 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -883,7 +883,7 @@ virQEMUCapsTypeIsAccelerated(virDomainVirtType type) } -static bool +bool virQEMUCapsHaveAccel(virQEMUCaps *qemuCaps) { return virQEMUCapsGet(qemuCaps, QEMU_CAPS_KVM) || @@ -5748,8 +5748,8 @@ virQEMUCapsInitQMP(virQEMUCaps *qemuCaps, return -1; /* - * If KVM was enabled during the first probe, we need to explicitly probe - * for TCG capabilities by asking the same binary again and turning KVM + * If acceleration was enabled during the first probe, we need to explicitly + * probe for TCG capabilities by asking the same binary again and turning KVM * off. */ if (virQEMUCapsHaveAccel(qemuCaps) && diff --git a/src/qemu/qemu_capspriv.h b/src/qemu/qemu_capspriv.h index 60fdf02f06..be83b13ab5 100644 --- a/src/qemu/qemu_capspriv.h +++ b/src/qemu/qemu_capspriv.h @@ -116,3 +116,6 @@ virQEMUCapsAddMachine(virQEMUCaps *qemuCaps, const char *defaultRAMid, bool deprecated, virTristateBool acpi); + +bool +virQEMUCapsHaveAccel(virQEMUCaps *qemuCaps); diff --git a/tests/qemucapabilitiestest.c b/tests/qemucapabilitiestest.c index 081f14a6c3..7575f9fd44 100644 --- a/tests/qemucapabilitiestest.c +++ b/tests/qemucapabilitiestest.c @@ -101,7 +101,8 @@ testQemuCaps(const void *opaque) if (virQEMUCapsInitQMPMonitor(capsActual, qemuMonitorTestGetMonitor(mon)) < 0) return -1; - if (virQEMUCapsGet(capsActual, QEMU_CAPS_KVM)) { + if (virQEMUCapsHaveAccel(capsActual) && + virQEMUCapsGet(capsActual, QEMU_CAPS_TCG)) { qemuMonitorResetCommandID(qemuMonitorTestGetMonitor(mon)); if (qemuProcessQMPInitMonitor(qemuMonitorTestGetMonitor(mon)) < 0)