On Tue, Jun 05, 2018 at 11:52:03AM +0200, Gerd Hoffmann wrote: > Hi, > > > > TL;DR: > > > - we have a new attribute value for vfio-pci mediated devices called 'display' > > > -> devices can now format this new 'display=on/off' property to the cmdline > > Good. > > > > - if user enables the vfio display (display=on) but doesn't enable OpenGL for > > > Spice, we automatically assume the usage of '-display egl-headless' > > Hmm, I think it would be better to have egl-headless explicitly > configured in the domain xml instead of doing it automagically depending > on configuration. I was thinking about that earlier, then we had a private conversation where I asked why there's no documentation on egl-headless in QEMU to which you replied that the future of egl-headless being uncertain, especially once there's remote opengl renderer support (as opposed to local nowadays). So I took a bit of a safe path here and only made the changes to the command line, thus leaving us with a way of easily ditching that if QEMU decides to deprecate egl-headless completely. So, if QEMU can guarantee supporting egl-headless (of course you can discourage usage of it...) then we surely can expose it through the XML, but I'd really wouldn't want to end up with an XML setting which we won't be able to satisfy at some point in the future. More importantly though, egl-headless was introduced in 2.10 IIRC, but I don't see any way for libvirt to use any kind of introspection here, there's no capability for egl-headless, I see it defined as a value for DisplayType in the qapi scheme (ui.json), but I don't see any query command. The way I handled it here is easy, I'm querying vfio display support which was introduced in 2.12 which is newer, but I'm not sure about the virgl + vnc case below, because that one doesn't need vfio display=on/off support. > > First, I'd prefer to allow non-opengl configuration for vfio displays. > nvidia has its own non-standard ways of doing things, which causes > problems now and then, so I'd like to have an easy way out in case > using egl-headless on nvidia fails to work properly. > > It's a bit ugly that we have to depend on qemu throwing errors in case > the vfio display uses dma-bufs (and therefore requires opengl) then > because libvirt can't easily probe the vfio display type. > > Second, you can use egl-headless for other use cases too, for example to > use virgl with vnc. Yep, that makes sense for us to support. Erik -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list