Since version 2.10, QEMU can be built without TCG. This patch
adds capabillity QEMU_CAPS_TCG_DISABLED that allows libvirt
to use a QEMU built without TCG.
Rather than create a capability that is set whenever TCG is
enabled (almost always), QEMU_CAPS_TCG_DISABLED is set only
when the TCG is not available. This avoids some issues
with backwards compatability.
For a domain that was created using QEMU >= 2.10 with KVM,
there is no information in the cached XML file that says
whether or not TCG was enabled. Versions of QEMU older
than 2.10 do not have a QMP interface for determining
whether QEMU is available. Since QEMU_CAPS_TCG_DISABLED
is set only when TCG is disabled, we do not have to do any
extra work to infer an appropriate value in either of these
cases.
QEMU_CAPS_TCG_DISABLED is set via QMP command qom-list-types.
Tobin Feldman-Fitzthum (5):
add QEMU_CAPS_TCG_DISABLED and probe conditionally
add virQEMUCapsGetVirtType convenience function
add virQEMUCapsProbeQMPTCGState function to set QEMU_CAPS_TCG_DISABLED
use new functions when probing
Add second qom-list-types call to test data.
src/qemu/qemu_capabilities.c | 80 +-
src/qemu/qemu_capabilities.h | 3 +
.../caps_2.10.0.aarch64.replies | 2695 ++-
.../caps_2.10.0.ppc64.replies | 2799 ++-
.../caps_2.10.0.s390x.replies | 1027 +-
.../caps_2.10.0.x86_64.replies | 1702 +-
.../caps_2.11.0.s390x.replies | 1063 +-
.../caps_2.11.0.x86_64.replies | 1688 +-
.../caps_2.12.0.aarch64.replies | 2960 +++-
.../caps_2.12.0.ppc64.replies | 2947 +++-
.../caps_2.12.0.s390x.replies | 1087 +-
.../caps_2.12.0.x86_64.replies | 1827 +-
.../caps_3.0.0.ppc64.replies | 2979 +++-
.../caps_3.0.0.s390x.replies | 1117 +-
.../caps_3.0.0.x86_64.replies | 1843 +-
.../caps_3.1.0.ppc64.replies | 2999 +++-
.../caps_3.1.0.x86_64.replies | 1863 +-
.../caps_4.0.0.aarch64.replies | 3223 +++-
.../caps_4.0.0.ppc64.replies | 3211 +++-
.../caps_4.0.0.s390x.replies | 1259 +-
.../caps_4.0.0.x86_64.replies | 1975 ++-
.../caps_4.1.0.x86_64.replies | 2207 ++-
.../caps_4.2.0.aarch64.replies | 3409 +++-
.../caps_4.2.0.ppc64.replies | 3248 +++-
.../caps_4.2.0.s390x.replies | 1259 +-
.../caps_4.2.0.x86_64.replies | 2296 ++-
.../caps_5.0.0.aarch64.replies | 3445 +++-
.../caps_5.0.0.ppc64.replies | 14002 +++++++++-------
.../qemucapabilitiesdata/caps_5.0.0.ppc64.xml | 1220 +-
.../caps_5.0.0.x86_64.replies | 2319 ++-
30 files changed, 65235 insertions(+), 8517 deletions(-)
--
2.20.1 (Apple Git-117)