Hi All, I realize that it may be a bit early to start this discussion, given the somewhat preliminary state of Virgil, still I would like to start a discussion about this now for 2 reasons: 1) I believe it would be good to start thinking about this earlier rather then later. 2) I would like to present a general overview of a plan for this at kvm-forum to get input on this from the wider kvm-forum community. I've already had a quick discussion about this with Dave Airlie, and our ideas on this aligned perfectly. The basic idea is to use qemu's console layer (include/ui/console.h) as an abstraction between the new virtio-vga device Dave has in mind (which will include optional 3D rendering capability through VIRGIL), and various display options, ie SDL, vnc and Spice. The console layer would need some extensions for this: 1) Multi head support, a question which comes up here, is do we only add support for multiple heads on a single card, or do we also want to support multiple cards each driving a head here ? I myself tend to go with the KISS solution for now and only support a single card with multiple heads. 2) The ability for a video-card generating output to pass a dma-buf context to the display (ui in qemu terms) to get the contents from, rather then requiring the contents to be rendered to some memory buffer. This way we can save the quite expensive read-back from gpu memory of the rendered result and then copying that back to the framebuffer of the gpu for local displays (ie gtk, SDL), we would of course still need the read back of the rendered output for vnc / spice. For proper multi-head support in the ui layer for local displays, we will need to use SDL-2, either by porting the current SDL ui code to SDL-2, or by introducing a new SDL-2 ui component. The changes needed to the gtk ui for multi-head support are not clear at this moment (no-one has looked into this yet AFAIK). Regards, Hans p.s. Note that having multi-head support in qemu's console layer + a multi-head capable SDL-2 ui, means that we could also use a qxl device together with the SDL-2 ui to do multi-head locally, which could be interesting for a variety of use-cases. _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel