mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-01 17:35:17 +00:00
qemu: capabilities: Un-retire QEMU_CAPS_EGL_HEADLESS
egl-headless 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 'egl-headless' 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: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
68940b3fb3
commit
4808323994
@ -1577,6 +1577,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
|
||||
{ "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 },
|
||||
{ "query-display-options/ret-type/+egl-headless", QEMU_CAPS_EGL_HEADLESS },
|
||||
};
|
||||
|
||||
typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps;
|
||||
@ -5145,8 +5146,10 @@ 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))
|
||||
if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_DISPLAY_OPTIONS)) {
|
||||
virQEMUCapsSet(qemuCaps, QEMU_CAPS_SDL);
|
||||
virQEMUCapsSet(qemuCaps, QEMU_CAPS_EGL_HEADLESS);
|
||||
}
|
||||
|
||||
if (ARCH_IS_X86(qemuCaps->arch) &&
|
||||
virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION)) {
|
||||
|
@ -483,7 +483,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
|
||||
/* 310 */
|
||||
QEMU_CAPS_MACHINE_PSERIES_CAP_HTM, /* -machine pseries.cap-htm */
|
||||
QEMU_CAPS_USB_STORAGE_WERROR, /* -device usb-storage,werror=..,rerror=.. */
|
||||
X_QEMU_CAPS_EGL_HEADLESS, /* -display egl-headless */
|
||||
QEMU_CAPS_EGL_HEADLESS, /* -display egl-headless */
|
||||
QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
|
||||
QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
|
||||
|
||||
|
@ -101,6 +101,7 @@
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='zpci'/>
|
||||
<flag name='iothread.poll-max-ns'/>
|
||||
<flag name='query-cpu-model-baseline'/>
|
||||
|
@ -179,6 +179,7 @@
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='iothread.poll-max-ns'/>
|
||||
<flag name='x86-max-cpu'/>
|
||||
<flag name='i8042'/>
|
||||
|
@ -142,6 +142,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -139,6 +139,7 @@
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -108,6 +108,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='zpci'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -183,6 +183,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='sev-guest'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -139,6 +139,7 @@
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -81,6 +81,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
<flag name='iothread.poll-max-ns'/>
|
||||
|
@ -81,6 +81,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
<flag name='iothread.poll-max-ns'/>
|
||||
|
@ -110,6 +110,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='zpci'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -185,6 +185,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -141,6 +141,7 @@
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -185,6 +185,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -143,6 +143,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -147,6 +147,7 @@
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -146,6 +146,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -146,6 +146,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -109,6 +109,7 @@
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='vfio-ap'/>
|
||||
<flag name='zpci'/>
|
||||
|
@ -184,6 +184,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -184,6 +184,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -145,6 +145,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -147,6 +147,7 @@
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -109,6 +109,7 @@
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='vfio-ap'/>
|
||||
|
@ -185,6 +185,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -148,6 +148,7 @@
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -150,6 +150,7 @@
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -146,6 +146,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -185,6 +185,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -72,6 +72,7 @@
|
||||
<flag name='screendump_device'/>
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
<flag name='memory-backend-memfd.hugetlb'/>
|
||||
|
@ -184,6 +184,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -147,6 +147,7 @@
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='tpm-emulator'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -148,6 +148,7 @@
|
||||
<flag name='machine.pseries.cap-hpt-max-page-size'/>
|
||||
<flag name='machine.pseries.cap-htm'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -144,6 +144,7 @@
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -107,6 +107,7 @@
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='vfio-ap'/>
|
||||
|
@ -184,6 +184,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -107,6 +107,7 @@
|
||||
<flag name='blockdev-del'/>
|
||||
<flag name='vhost-vsock'/>
|
||||
<flag name='chardev-fd-pass'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='vfio-ap'/>
|
||||
|
@ -184,6 +184,7 @@
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='sev-guest'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
@ -182,6 +182,7 @@
|
||||
<flag name='mch'/>
|
||||
<flag name='mch.extended-tseg-mbytes'/>
|
||||
<flag name='usb-storage.werror'/>
|
||||
<flag name='egl-headless'/>
|
||||
<flag name='vfio-pci.display'/>
|
||||
<flag name='blockdev'/>
|
||||
<flag name='memory-backend-memfd'/>
|
||||
|
Loading…
x
Reference in New Issue
Block a user