[Spice-devel] [protocol RFC 0/2] RANDR support via QXLHead + SpiceHead

Hans de Goede hdegoede at redhat.com
Mon May 7 00:21:24 PDT 2012


Hi,

On 05/07/2012 09:03 AM, Gerd Hoffmann wrote:
>    Hi,
>
>>   1. Guest enables a new monitor:
>>   2. Guest pushes QXLHead command to command ring
>>   3. Server sends SpiceHead message on the ring's display channel.
>>   4. Client creates a window out of [x, y, width, height] scanning out of the primary surface (there is one associated primary with the display channel)
>
> Iziks original idea for that one was to just use additional surfaces for
> the additional heads.  QXL_IO_{CREATE,DESTROY}_PRIMARY write an id
> because of that, which is forced to be zero right now.  IIRC the plan
> was to just allow non-zero values for more heads there, so each
> display/head has its own primary surface.

AFAIK that won't work because xrandr expects there to be multiple
crtc's which scanout of one framebuffer. Note this also makes things
like moving a window (partially) over a screen boundary much smoother,
since it is still a bitblt to one surface, rather then 2 bitblt's ...

Regards,

Hans


More information about the Spice-devel mailing list