Extending virtio_console to support multiple ports

Anthony Liguori anthony at codemonkey.ws
Fri Aug 28 10:00:08 PDT 2009


Amit Shah wrote:
> On (Tue) Aug 25 2009 [11:47:20], Amit Shah wrote:
>   
>> Hello all,
>>
>> Here is a new iteration of the patch series that implements a
>> transport for guest and host communications.
>>
>> The code has been updated to reuse the virtio-console device instead
>> of creating a new virtio-serial device.
>>     
>
> And the problem now is that hvc calls the put_chars function with
> spinlocks held and we now allocate pages in send_buf(), called from
> put_chars.
>   

Don't allocate pages in send_buf.  There's a fixed number of possible 
entries on the ring.  Preallocate them up front and then you don't need 
to sleep.

> A few solutions:
> - Keep things as they are, virtio_console.c remains as it is and
>   virtio_serial.c gets added
>   
Not an option from a QEMU perspective.

Regards,

Anthony Liguori


More information about the Virtualization mailing list