Hi All, So trying to summarize what has been discussed before: The basic idea for virgil + spice integration is to use qemu's console layer as an abstraction between the new virtio-vga device Dave has in mind: http://airlied.livejournal.com/ and various display options, ie SDL, vnc and Spice. The console layer would need some extensions for this: 1) Multi head support, this will be in the form of virtual gfx cards registering 1 or more QemuConsoles (one for each virtual connector), with some infrastructure bits in the ui core + frontends to allow enabling/disabling them. 2) In order to support multi head (and argb cursors) with SDL, qemu will get an SDL-2 ui, this will be a new ui parallel to the existing SDL ui, note only one can be build at the same time. 3) Virgil will render using the host gpu, using EGL to talk to a drm render node. For non local displays the rendered contents will be read back from the gpu and then passed as a pixmap to the ui to transport over the network 4) For local displays we want to avoid the (expensive) read back from gpu memory, this requires passing the rendering context to the ui. There are 2 different cases here: 4a) A pure local ui running in the qemu context, ie sdl-2 and gtk 4b) The SDL and gtk uis are only useful for short lived vms, for a longer running vm, we want the vm to be able to run headless, and allow the user to connect to it occasionally to view the vm's "monitors" 5) Traditionally 4b this is done using vnc / spice over loopback, but for Virgil we will want to add some smarts to avoid the expensive gpu mem readback. libvirt already uses unix pipes rather then tcp sockets when making a local connection. The plan is to use fd passing over these pipes to give a spice-client viewing a local vm a handle to the render context, which it can then use to directly display the rendered frames. This will be implemented in spice-gtk, so that all spice-clients using spice-gtk (virt-manager, virt-viewer, boxes), automatically get support for this. So comments or corrections anyone? Note the intend of this summary is to serve as a basis for my talk at kvm-forum. Regards, Hans _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel