[libvirt] [PATCH v4 0/3] Allow PCI virtio on ARM "virt" machine

Pavel Fedin p.fedin at samsung.com
Thu Jul 9 09:11:25 UTC 2015


Virt machine in qemu since v2.3.0 has PCI generic host controller, and can use
PCI devices. This provides performance improvement as well as vhost-net with
irqfd support for virtio-net. However libvirt currently does not allow ARM virt
machine to have PCI devices. This patchset adds the necessary support.

Changes since v3:
- Capability is based not on qemu version but on support of "gpex-pcihost"
  device by qemu
- Added a workaround, allowing to pass "make check". The problem is that
  test suite does not build capabilities cache. Unfortunately this means
  that correct unit-test for the new functionality currently cannot be
  written. Test suite framework needs to be improved.
Changes since v2:
Complete rework, use different approach
- Correctly model PCI Express bus on the machine. It is now possible to
  explicitly specify <address-type='pci'> with attributes. This allows to
  attach not only virtio, but any other PCI device to the model.
- Default is not changed and still mmio, for backwards compatibility with
  existing installations. PCI bus has to be explicitly specified.
- Check for the capability in correct place, in v2 it actually did not work
Changes since v1:
- Added capability based on qemu version number
- Recognize also "virt-" prefix

Pavel Fedin (3):
  Introduce QEMU_CAPS_OBJECT_GPEX
  Add PCI-Express root to ARM virt machine
  Build correct command line for PCI NICs on ARM

 src/qemu/qemu_capabilities.c |  2 ++
 src/qemu/qemu_capabilities.h |  1 +
 src/qemu/qemu_command.c      |  3 ++-
 src/qemu/qemu_domain.c       | 17 +++++++++++++----
 4 files changed, 18 insertions(+), 5 deletions(-)

-- 
1.9.5.msysgit.0




More information about the libvir-list mailing list