Hi Cole,
Thanks for your kindly help.
On 13 June 2016 at 06:21, Cole Robinson <crobinso(a)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