Любые мануалы по настройке virgl, которые я находил, предполагали запуск виртуалки и SPICE-клиента на одной машине (через unix socket, а не tcp). Без 3D всё работает хорошо, красиво, но у QXL фреймбуффер гораздо быстрее, но я хочу 3D, а у QXL его нет. Может, virgl и не должен работать через TCP и я хочу от него чего-то не того?
Версии ядра, qemu, libvirt, spice, virglrenderer актуальные, поддержка virgl в ядре включена. При разных конфигурациях получаю такие ошибки:
unsupported configuration: virtio 3d acceleration is not supported
unsupported configuration: This QEMU doesn't support spice OpenGL
<graphics type='spice' autoport='yes'>
<listen type='address'/>
<gl enable='yes'/>
</graphics>
<video>
<model type='virtio' heads='1' primary='yes'>
<acceleration accel3d='yes'/>
</model>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
[ 4.578115] [drm] Initialized
[ 4.614695] [drm] pci: virtio-vga detected at 0000:00:02.0
[ 4.614698] fb: switching to virtiodrmfb from EFI VGA
[ 4.614938] [drm] virgl 3d acceleration not available
[ 4.615796] [drm] virtio vbuffers: 96 bufs, 192B each, 18kB total.
[ 4.616087] [drm] number of scanouts: 1
[ 4.616103] [drm] number of cap sets: 0
[ 4.625981] virtio_gpu virtio0: fb0: virtiodrmfb frame buffer device
[ 4.645667] [drm] Initialized virtio_gpu 0.0.1 0 on minor 0