[libvirt] Question about virtio-pci in Aarch64

Cole Robinson crobinso at redhat.com
Mon Jun 13 14:06:59 UTC 2016


On 06/12/2016 10:08 PM, Kevin Zhao wrote:
> Hi Cole,
>      Thanks for your kindly help.
> 
> On 13 June 2016 at 06:21, Cole Robinson <crobinso at redhat.com
> <mailto:crobinso at redhat.com>> wrote:
> 
>     On 06/12/2016 10:29 AM, Kevin Zhao wrote:
>     > Hi Cole && All,
>     >      Nice meeting you in the libvirt mail-list. Greetings from Linaro !!!
>     >      I am Kevin Zhao from Linaro and working for OpenStack on Aarch64.
>     > Nowadays I find that the default "virtio" bus is "virtio-mmio" , not
>     > "virtio-pci". Since virtio-mmio do not has the host plugged function ,
>     > something is wrong with the function in OpenStack Nova.
>     >
>     >       Then I search and find some mail information as belows by Cole :-)
>     >       1) https://www.redhat.com/archives/libvir-list/2015-December/msg00217.html
>     >       2) https://www.redhat.com/archives/libvir-list/2016-March/msg00167.html
>     >
>     >        I see some efforts have been doing by you. Really thanks for your
>     > efforts for Aarch64. And I have some small questions.
>     >       1. Is Libvirt planning to replace the default virtio-mmio to virtio-pci
>     > for Aarch64?
> 
>     We have vague plans to maybe change the virtio-mmio default to virtio-pci at
>     some future point, based on some new enough qemu machine type. But the main
>     blocker is that most linux distributions currently don't work out of the box
>     with virtio-pci, at least Fedora doesn't as far as I know. So changing the
>     default now is pre-mature
> 
> OK . Hope it will be true in the future. 
> 
>     >       2. If not , how can I change the xml file(generated by Virsh) for
>     > virtio-pci  so that Qemu can recognize it ?
>     >
> 
>     The latest libvirt-1.3.5 release accepts device XML containing <address
>     type='pci'/> . The address block is an explicit request to libvirt to
>     'allocate a PCI address' rather than the default virtio-mmio. So for example
>     if you want to specify a virtio nic, but have it use virtio-pci rather than
>     virtio-mmio, you can do something like:
> 
>         <interface type='network'>
>           <source network='default'/>
>           <model type='virtio'/>
>           <address type='pci'/>
>         </interface>
> 
>     But there isn't currently any switch to say 'always give me virtio-pci instead
>     of virtio-mmio'
> 
> In my opinion, that is to say, when I want to attach a block device to a guest
> and hope it 
> take effects soon,*the only way is using 'scsi' instead of 'virtio'* in
> Aarch64 just like what 
> virt-manager does since scsi supports hot plugged. Am I right?

On x86 at least virtio-blk + pci supports hotplug, but I don't know if that
combo works for aarch64 at the moment. However disk=scsi hotplug should
currently work on aarch64 with controller=virtio-scsi, I've tested that before

Thanks,
Cole




More information about the libvir-list mailing list