[PATCH 2/5] qemu: Adapt to virtio-gpu-gl-pci device when available

Han Han hhan at redhat.com
Tue Jun 8 01:15:35 UTC 2021


QEMU 6.1 will add virtio-gpu-gl-pci device to replace the virgl property
of virtio-gpu-pci device. Adapt to that change.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1967356

Signed-off-by: Han Han <hhan at redhat.com>
---
 src/qemu/qemu_command.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 4ed82ed570..a79e96a121 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -546,7 +546,11 @@ qemuBuildVirtioDevStr(virBuffer *buf,
         return -1;
     }
 
-    virBufferAsprintf(buf, "%s-%s", baseName, implName);
+    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_GPU_GL_PCI) &&
+        STREQ(baseName, "virtio-gpu"))
+        virBufferAsprintf(buf, "%s-gl-%s", baseName, implName);
+    else
+        virBufferAsprintf(buf, "%s-%s", baseName, implName);
 
     switch (devtype) {
         case VIR_DOMAIN_DEVICE_DISK:
@@ -4242,6 +4246,7 @@ qemuBuildDeviceVideoStr(const virDomainDef *def,
         video->type == VIR_DOMAIN_VIDEO_TYPE_VIRTIO) {
         if (video->accel &&
             virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_GPU_VIRGL) &&
+            !virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_GPU_GL_PCI) &&
             (video->accel->accel3d == VIR_TRISTATE_SWITCH_ON ||
              video->accel->accel3d == VIR_TRISTATE_SWITCH_OFF)) {
             virBufferAsprintf(&buf, ",virgl=%s",
-- 
2.31.1




More information about the libvir-list mailing list