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@redhat.com
> <mailto:crobinso@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