[libvirt] [PATCH v2 0/7] PCI Multifunction hotplug/unplug, part 1

Daniel Henrique Barboza danielhb413 at gmail.com
Thu Jul 25 18:09:44 UTC 2019


v2:
- rebased without 3 patches from Michal that are under review
in his NVMe patch series

This is the first part of the feature discussed at [1]. These
patches are mostly cleanup and fixes, thus it is beneficial
to have them upstream right away.

The whole feature can be checked out at [2]. All patches survives
unit testing. The feature was stress tested with hundreds
of consecutive hotplug/unplugs of a Broadcom BCM5719 multifunction
network card in a guest running in a Power 8 server. Hopefully
I'll find a suitable x86 env to stress test the feature there
too.

[1] https://www.redhat.com/archives/libvir-list/2019-June/msg00703.html
[2] https://github.com/danielhb/libvirt/tree/multifunction_latest




Daniel Henrique Barboza (1):
  util/virhostdev: enhance VFIO device is in use detection

Shivaprasad G Bhat (6):
  tests: Fix the iommu group path in mock pci
  tests: pci: Mock the iommu groups and vfio
  virpcitest: Change the stub driver to vfio from pci-stub
  virpcimock: Mock the SRIOV Virtual functions
  tests: qemu: Add test case for pci-hostdev hotplug
  tests: Add a baseline test for multifunction pci device use case

 src/util/virhostdev.c                         |  74 +++++--
 src/util/virprocess.h                         |   2 +-
 tests/Makefile.am                             |   7 +
 tests/qemuhotplugtest.c                       |  42 +++-
 .../qemuhotplug-hostdev-pci.xml               |   6 +
 .../qemuhotplug-base-live+hostdev-pci.xml     |  58 +++++
 ...uhotplug-pseries-base-live+hostdev-pci.xml |  51 +++++
 .../qemuhotplug-pseries-base-live.xml         |  43 ++++
 .../hostdev-pci-multifunction.args            |  35 +++
 .../hostdev-pci-multifunction.xml             |  59 +++++
 .../hostdev-vfio-multidomain.args             |   2 +-
 .../hostdev-vfio-multidomain.xml              |   2 +-
 tests/qemuxml2argvdata/hostdev-vfio.args      |   2 +-
 tests/qemuxml2argvdata/hostdev-vfio.xml       |   2 +-
 tests/qemuxml2argvdata/net-hostdev-fail.xml   |   2 +-
 tests/qemuxml2argvdata/net-hostdev-vfio.args  |   2 +-
 tests/qemuxml2argvdata/net-hostdev-vfio.xml   |   2 +-
 tests/qemuxml2argvtest.c                      |   3 +
 .../hostdev-pci-multifunction.xml             |  79 +++++++
 tests/qemuxml2xmloutdata/hostdev-vfio.xml     |   2 +-
 tests/qemuxml2xmloutdata/net-hostdev-vfio.xml |   2 +-
 tests/qemuxml2xmltest.c                       |   1 +
 tests/virhostdevtest.c                        |   4 +-
 tests/virpcimock.c                            | 201 ++++++++++++++++--
 tests/virpcitest.c                            |  12 +-
 tests/virpcitestdata/0000-06-12.0.config      | Bin 0 -> 256 bytes
 tests/virpcitestdata/0000-06-12.1.config      | Bin 0 -> 256 bytes
 tests/virpcitestdata/0000-06-12.2.config      | Bin 0 -> 256 bytes
 tests/virprocessmock.c                        |  28 +++
 29 files changed, 668 insertions(+), 55 deletions(-)
 create mode 100644 tests/qemuhotplugtestdevices/qemuhotplug-hostdev-pci.xml
 create mode 100644 tests/qemuhotplugtestdomains/qemuhotplug-base-live+hostdev-pci.xml
 create mode 100644 tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live+hostdev-pci.xml
 create mode 100644 tests/qemuhotplugtestdomains/qemuhotplug-pseries-base-live.xml
 create mode 100644 tests/qemuxml2argvdata/hostdev-pci-multifunction.args
 create mode 100644 tests/qemuxml2argvdata/hostdev-pci-multifunction.xml
 create mode 100644 tests/qemuxml2xmloutdata/hostdev-pci-multifunction.xml
 create mode 100644 tests/virpcitestdata/0000-06-12.0.config
 create mode 100644 tests/virpcitestdata/0000-06-12.1.config
 create mode 100644 tests/virpcitestdata/0000-06-12.2.config
 create mode 100644 tests/virprocessmock.c

-- 
2.21.0




More information about the libvir-list mailing list