qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC v2 00/12] Virtio-mmio refactoring.


From: Ying-Shiuan Pan
Subject: Re: [Qemu-devel] [RFC v2 00/12] Virtio-mmio refactoring.
Date: Fri, 28 Sep 2012 10:35:13 +0800

Hi,

We have applied virtio-mmio into our work for more than half year,
although the patch we used is not yet updated to the latest one.
We have tested virtio-blk, virtio-net, virtio-console, and virtio-balloon.
All of them are working very well.

Hope you will enjoy them also :)

----
Best Regards,
潘穎軒Ying-Shiuan Pan


> Message: 1
> Date: Thu, 27 Sep 2012 19:31:03 +0200
> From: KONRAD Fr?d?ric <address@hidden>
> To: Evgeny Voevodin <address@hidden>, address@hidden,
>         Mark Burton <address@hidden>, address@hidden
> Subject: Re: [Qemu-devel] [RFC v2 00/12] Virtio-mmio refactoring.
> Message-ID: <address@hidden>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> Hi,
>
> We actually want to add virtio models for arm, therefore these patches
> are really helpful.
>
> We will try it, start looking at the issues.
>
> Any feedback ?
>
> On 17/09/2012 12:00, Evgeny Voevodin wrote:
>> Previous RFC you can find at
>> http://lists.gnu.org/archive/html/qemu-devel/2012-04/msg03665.html
>> Yes, long time ago...
>> Since I'm not sure when I'll be able to continue on this,
>> I'm publishing this work as is.
>> In this patchset I tried to split virtio-xxx-pci devices into
>> virtio-pci + virtio-xxx (blk, net, serial,...). Also virtio-mmio
>> transport is introduced based on Peter's work which is accessible
>> here: http://lists.gnu.org/archive/html/qemu-devel/2011-11/msg01870.html
>>
>> The main idea was to let users specify
>> -device virtio-pci,id=virtio-pci.0
>> -device virtio-blk,transport=virtio-pci.0,...
>>
>> and
>>
>> -device virtio-mmio,id=virtio-mmio.0
>> -device virtio-blk,transport=virtio-mmio.0,...
>>
>> I created virtio-pci and virtio-mmio transport devices and tried to enclose
>> back-end functionality into virtio-blk, virtio-net, etc. On
>> initialization of transport device it creates a bus to which a back-end 
>> device
>> could be connected. Each back-end device is implemented in corresponding 
>> source
>> file. As for PCI transport, I temporary placed it in a new virtio-pci-new.c 
>> file
>> to not break a functionality of still presented virtio-xxx-pci devices.
>>
>> Known issues to be resolved:
>> 1. On creation of back-end we need to resolve somehow if props were 
>> explicitly set
>> by user.
>> 2. Back-end device can't be initialized if there are no free bus created by 
>> transport,
>> so you can't specify
>> -device virtio-blk,transport=virtio-pci.0,...
>> -device virtio-pci,id=virtio-pci.0
>> 3. Implement virtio-xxx-devices such that they just create virtio-pci and 
>> virtio-xxx
>> devices during initialization.
>> 4. Refactor all remaining back-ends since I just tried blk, net, serial and 
>> balloon.
>> 5. Refactor s390
>> 6. Further?
>>
>> Evgeny Voevodin (9):
>>    Virtio: Add transport bindings.
>>    hw/qdev-properties.c: Add "transport" property.
>>    hw/pci.c: Make pci_add_option_rom global visible
>>    hw/virtio-serial-bus.c: Add virtio-serial device.
>>    hw/virtio-balloon.c: Add virtio-balloon device.
>>    hw/virtio-net.c: Add virtio-net device.
>>    hw/virtio-blk.c: Add virtio-blk device.
>>    hw/virtio-pci-new.c: Add VirtIOPCI device.
>>    hw/exynos4210.c: Create two virtio-mmio transport instances.
>>
>> Peter Maydell (3):
>>    virtio: Add support for guest setting of queue size
>>    virtio: Support transports which can specify the vring alignment
>>    Add MMIO based virtio transport
>>
>>   hw/Makefile.objs       |    3 +
>>   hw/exynos4210.c        |   13 +
>>   hw/pci.c               |    3 +-
>>   hw/pci.h               |    2 +
>>   hw/qdev-properties.c   |   29 ++
>>   hw/qdev.h              |    3 +
>>   hw/virtio-balloon.c    |   42 +++
>>   hw/virtio-balloon.h    |    9 +
>>   hw/virtio-blk.c        |   65 ++++
>>   hw/virtio-blk.h        |   15 +
>>   hw/virtio-mmio.c       |  400 +++++++++++++++++++++
>>   hw/virtio-net.c        |   59 +++
>>   hw/virtio-net.h        |   16 +
>>   hw/virtio-pci-new.c    |  925 
>> ++++++++++++++++++++++++++++++++++++++++++++++++
>>   hw/virtio-pci.h        |   18 +
>>   hw/virtio-serial-bus.c |   44 +++
>>   hw/virtio-serial.h     |   11 +
>>   hw/virtio-transport.c  |  147 ++++++++
>>   hw/virtio-transport.h  |   74 ++++
>>   hw/virtio.c            |   20 +-
>>   hw/virtio.h            |    2 +
>>   21 files changed, 1896 insertions(+), 4 deletions(-)
>>   create mode 100644 hw/virtio-mmio.c
>>   create mode 100644 hw/virtio-pci-new.c
>>   create mode 100644 hw/virtio-transport.c
>>   create mode 100644 hw/virtio-transport.h
>>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]