]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: capabilities: Un-retire QEMU_CAPS_SDL
authorPeter Krempa <pkrempa@redhat.com>
Tue, 15 Jun 2021 09:38:26 +0000 (11:38 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Tue, 15 Jun 2021 14:58:23 +0000 (16:58 +0200)
SDL graphics can be compiled out in qemu so we need to be able to know
whether the given qemu version support it.

Base the capability on the presence of the 'sdl' member in
'query-display-options' or imply it if 'query-display-options' is not
supported as we implied it before for all versions.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
40 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.11.0.x86_64.xml
tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml
tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml
tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml
tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml
tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml
tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml
tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml
tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml
tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml
tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml
tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml
tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml
tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml
tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml
tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml
tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml
tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml
tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml
tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml
tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml

index 8d83c52896be44e74777375991a50e6492ba18e5..4845f3ad7301e34562873fd59aa10639bde1fd98 100644 (file)
@@ -1576,6 +1576,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
       QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING },
     { "blockdev-backup", QEMU_CAPS_BLOCKDEV_BACKUP },
     { "object-add/arg-type/qom-type/^secret", QEMU_CAPS_OBJECT_QAPIFIED },
+    { "query-display-options/ret-type/+sdl", QEMU_CAPS_SDL },
 };
 
 typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps;
@@ -5160,6 +5161,11 @@ virQEMUCapsInitProcessCapsInterlock(virQEMUCaps *qemuCaps)
 static void
 virQEMUCapsInitProcessCaps(virQEMUCaps *qemuCaps)
 {
+    /* versions prior to the introduction of 'query-display-options' had SDL
+     * mostly compiled in */
+    if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_DISPLAY_OPTIONS))
+        virQEMUCapsSet(qemuCaps, QEMU_CAPS_SDL);
+
     if (ARCH_IS_X86(qemuCaps->arch) &&
         virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION)) {
         virQEMUCapsSet(qemuCaps, QEMU_CAPS_CPU_CACHE);
index 22945c84f0b8248baf3b8971ec1ba4ffa4b3d2cb..b2878312acd4fdec06da0fe0bbbb5309d047f9f5 100644 (file)
@@ -82,7 +82,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
 
     /* 25 */
     X_QEMU_CAPS_DEVICE, /* Is the -device arg available */
-    X_QEMU_CAPS_SDL, /* Is the new -sdl arg available */
+    QEMU_CAPS_SDL, /* support for SDL graphics is compiled into qemu */
     X_QEMU_CAPS_SMP_TOPOLOGY, /* -smp has sockets/cores/threads */
     X_QEMU_CAPS_NETDEV, /* -netdev flag & netdev_add/remove */
     X_QEMU_CAPS_RTC, /* The -rtc flag for clock options */
index aa70cdc23402c6521fcc873bd49d6c86a0f5710d..5cedec5e777586106f234bffe5c3ecdb77011a1f 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index 250bebc1a2c524d5093732c5c40f23de81191fe7..d7b447692a43e7bb4b593259d9c4b513e3fe3f4d 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index b2bff6b09fc29f9e0f053a385aa1bf53951399c7..291fdd95b3a9ab678a81aa7a8fd131151201b525 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index e6a95317e867e09d4080d45071cf2e5177aebb84..53bd692fbfe42ed655af27cf006b3d3d60c2604d 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 3535bb05e54f2be30563a0bb2d32fa8f861fbb06..5afa0e7d0cd544647dee2ec4137b8d010779208f 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index bf3ab61aa9aca572f214e7dbd606b00b597dae17..1d25f2c3fa31d7ace804a3e2390e6401ea49b72e 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index d70ce46519576ee19ecf027fbf6bb433623ee8fc..c6eea904e09d411eb036174d7a026c56eac35f65 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index a87072faee80cacf3bfd939fb37467dea9cd8de0..710687d3169c03c477e7f35da1cd1311c35b3a09 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='scsi-disk.channel'/>
   <flag name='scsi-block'/>
   <flag name='dump-guest-memory'/>
index 7e470d941a95b971718edf73e2b73a0243aa04bb..4d9290c482966b3153bed6606a1d080e29c46746 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='scsi-disk.channel'/>
   <flag name='scsi-block'/>
   <flag name='dump-guest-memory'/>
index 8ffd4d1dc721585de83f553a50a5bec2690fb788..b0083189e138ade8a2a8af2ea865017c736a0459 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index df815f878d059f124a8a7994fca2ee57c42ed99f..6d064953fa3095e8805270026992f5ba01425e24 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index 755f846c2d10ea7c756b497141c7ab1870ebc185..56c71d45ac01b89267c2d6befefb9ae0b79b5ef6 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 332ab1d130a37bf2e31bb82f2a54108298a92447..3fb8115b64157b270ec265b7cf408b4f57579b24 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index c6972fb9e56166ca46210a1801f8440af6f0448a..4239da6d7afc7ccb27f5c3ba56fb9175e99b14ef 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index f8c5ddb099fde5fbeec142b87e52923622bdabb7..fd96361a3e913a502d6f4fb2e2e9c1c0b6372ae3 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 804fb07c707681429597ea4fa14b541cc6993dc3..3d5fe67c2ba68e4a39e493d76f2798bf0bd97bce 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
   <flag name='ccid-emulated'/>
index 42e0f153f3c1e2c8be84b63881430159a7e9f4cb..08307660ad9e2b1e55362ff136890c04f411f8ab 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
   <flag name='ccid-emulated'/>
index cad9606b15660b10e3acdf72bf1d70af12694692..075dd8a453387293a7d46908de6536e7af037084 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index c7ecbfa45ad67dade3afa3977d0be67fbcc23562..32a17e50d71a97979ab751a726c3b535597d28fe 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index 970f170f5d08e21b8a4f6fccf08d5ee521e8b328..83f52ff660c31d52563d90f7ec1d77aa4cea32d4 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index e1707b22a52156df0028a0a6ef508e702a93539f..e5cd3336f7c3d35f2c825620d75e774ded09020c 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 9ca0a6cfde4652714cc1c361b365ede23704cd2d..53588c858aa0f8a453dedbe8ef058461273e28a3 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 36f490847495efbf2197e759aa9547c29d1f6e68..cd17f7b58efbe3aed1398d135d0eb8bf0505aa37 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index 432802f7b2df921eec01e7a6ba5961788585344b..c6445ce9a578272df23e94784c092a420dc7dd04 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index d62fb640a48dc6739cf652a7305da688a0baf965..a5ee240140737b56e78a66e8c96c84749aefc112 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 116ea1d289b5067358506d78de72db860ace89ec..0788afdc1205d5f4f822c0c24db9ebce9fe2dbd5 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index ac41141dea8c10cfccd0b3665c515afb4ff66923..9b70bf4f9bf29a12997229284fd7cfad8b8444af 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
   <flag name='ccid-emulated'/>
index 7bc91b3070cbbe9ba98412b72469261ec6b9a1dd..de7d3a172648e14a556cfc032fda491f87a10d04 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index bb1acbf42e45aeb53509e06e5c4d953c57c6d6dd..1fe12346fdea774f478978cb2cbf6f349c26b344 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='spice'/>
   <flag name='usb-redir'/>
   <flag name='scsi-disk.channel'/>
index fa86d43e5680de2c13a1af28e6ba4cbf35bc8117..b2541a251ce569518b96a1b65b572dd6b92c212c 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index 86590b8a1696e9516df241c776289b3498c16c13..0283992fff18c9b5cb9709b0b54c2ae1baf8456c 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 12c0ab47b8356802c26d4c6bca5dee3c544ceac8..eadc07bd5fd18a9d90bf4ef90b576c5f34af97be 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='hda-duplex'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
index 457339740a764649b3eee2b65733ea96bf500bc7..8a1f84c528e4ab5eb5b3868320f3dc55af2a808e 100644 (file)
@@ -3,6 +3,7 @@
   <qemuctime>0</qemuctime>
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
+  <flag name='sdl'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
   <flag name='ccid-emulated'/>
index 816b9a150c0b9c328e2f1fac8da845f28aa06c8f..b39cd8ba6f6eae6afa59d1c6265f81bbddf316d9 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index 5b5bf7635562a9732b018b568b02f1671db2e9c8..504bc094afa50be9d0817050e38ac6636a699e14 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index a2f6b9d3bec91b45dd3bcdd1fc2a75ddb0d131f2..1a0e75570c33ff8401afdac8adf49f4d3b885729 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='virtio-tx-alg'/>
   <flag name='virtio-blk-pci.ioeventfd'/>
   <flag name='virtio-blk-pci.event_idx'/>
index 69d7c0028893cabcd44460ad7e949e43b734964a..cd21c6c6950bd2a90a0744feaf07cc67b6ccd8e5 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>
index 7d816b4ab755acddfb57f0623dd3086f4769ee8d..2df9e6f4cbc8c21c4d83e2822eedabf0c2c3afc9 100644 (file)
@@ -4,6 +4,7 @@
   <selfctime>0</selfctime>
   <selfvers>0</selfvers>
   <flag name='kvm'/>
+  <flag name='sdl'/>
   <flag name='no-hpet'/>
   <flag name='spice'/>
   <flag name='hda-duplex'/>