qemu: capabilities: Un-retire QEMU_CAPS_SDL

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>
This commit is contained in:
Peter Krempa 2021-06-15 11:38:26 +02:00
parent 55ead2333f
commit f9dda2805f
40 changed files with 45 additions and 1 deletions

View 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);

View 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 */

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>

View 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'/>