On Tue, Jun 08, 2021 at 16:14:36 +0200, Michal Prívozník wrote: > On 6/8/21 3:15 AM, Han Han wrote: > > 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@xxxxxxxxxx> > > --- > > 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); > > This doesn't look right. What if domain has: > > <acceleration accel3d='no'/> > > This will still pick virtio-gpu-gl-pci, wouldn't it? I think we need to > pick the correct model beforehand and leave qemuBuildVirtioDevStr() > unmodified. Definitely. Ideally the command line formatter itself should never do any form of logic of picking the models or device types which could have ABI impact.