On 5/10/21 3:20 PM, Gerd Hoffmann wrote: > Move device init (realize) and properties. > > Drop the virgl property, the virtio-gpu-gl-device has virgl enabled no > matter what. Just use virtio-gpu-device instead if you don't want > enable virgl and opengl. This simplifies the logic and reduces the test > matrix. > > Signed-off-by: Gerd Hoffmann <kra...@redhat.com> > Message-id: 20210430113547.1816178-1-kra...@redhat.com > Message-Id: <20210430113547.1816178-4-kra...@redhat.com> > --- > include/hw/virtio/virtio-gpu.h | 1 + > hw/display/virtio-gpu-gl.c | 33 +++++++++++++++++++++++++++++++++ > hw/display/virtio-gpu.c | 23 +---------------------- > 3 files changed, 35 insertions(+), 22 deletions(-) >
> @@ -1251,12 +1236,6 @@ static Property virtio_gpu_properties[] = { > VIRTIO_GPU_BASE_PROPERTIES(VirtIOGPU, parent_obj.conf), > DEFINE_PROP_SIZE("max_hostmem", VirtIOGPU, conf_max_hostmem, > 256 * MiB), > -#ifdef CONFIG_VIRGL > - DEFINE_PROP_BIT("virgl", VirtIOGPU, parent_obj.conf.flags, > - VIRTIO_GPU_FLAG_VIRGL_ENABLED, true), > - DEFINE_PROP_BIT("stats", VirtIOGPU, parent_obj.conf.flags, > - VIRTIO_GPU_FLAG_STATS_ENABLED, false), > -#endif > DEFINE_PROP_END_OF_LIST(), > }; > > Sorry for catching this a bit late, but libvirt is looking for "virgl" property when guest XML has 3D acceleration enabled: <video> <model type='virtio' heads='1' primary='yes'> <acceleration accel3d='yes'/> </model> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> This is the corresponding part of cmd line: -device virtio-vga,id=video0,virgl=on,max_outputs=1,bus=pci.0,addr=0x2 The commit message suggests that virtio-gpu-gl-device should be used instead. Fair enough, so IIUC the cmd line should be changed to: -device virtio-gpu-gl-device,id=video0,max_outputs=1,bus=pci.0,addr=0x2 Michal