Re: Extending virtio_console to support multiple ports

Anthony Liguori
2009-08-30T12:48:39Z

Amit Shah wrote:
> I did think about that as well, but there are problems:
>
> - vnc clients (at least tigervnc) wants to receive the entire clipboard
> in a single flush command. So in the pre-allocated buffers scenario we
> could run short of the available buffers in some cases. So there will
> have to be a flag with each buffer that says 'there's more data
> pending for this particular write' which will have to be passed on to
> qemu and qemu will then flush it once it receives all the data
>

No flags, assume it's a streaming protocol and don't assume anything
about message sizes. IOW, when you send clipboard data, send size and
then the data. QEMU consumes bytes until it reaches size.

> - A lock has to be introduced to fetch one unused buffer from the list
> and pass it on to the host. And this lock has to be a spinlock, just
> because writes can be called from irq context.
>

I don't see a problem here.

Regards,

Anthony Liguori

> Amit
>