As discussed yesterday: https://www.redhat.com/archives/libguestfs/2017-January/msg00040.html qemu and the kernel now support virtio-pci on aarch64. It turns out that no changes are required for the libvirt backend, since with libvirt 3.0.0 the same XML will switch to using virtio-pci over virtio-mmio. I have tested this on Fedora 25 with a self-compiled libvirt 3.0.0 rc2. However for the direct backend we do need a small change to stop using virtio-mmio devices. In fact this simply makes aarch64 more like x86_64. I have mostly tested this by running 'make check-release' but I found a few (unconnected) problems with that so I'm still running the checks on this one. However it's a pretty simple and obvious change. I did check that the max-disks test passes. Rich.