[libvirt] [PATCH v1 00/10] PCI Multifunction hotplug/unplug, part 1

Daniel Henrique Barboza posted 10 patches 4 years, 9 months ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20190626193559.24431-1-danielhb413@gmail.com
There is a newer version of this series
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                            | 276 +++++++++++++++---
tests/virpcitest.c                            |  40 +--
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, 726 insertions(+), 100 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
[libvirt] [PATCH v1 00/10] PCI Multifunction hotplug/unplug, part 1
Posted by Daniel Henrique Barboza 4 years, 9 months ago
This is the first part of the feature discussed at [1]. With the
exception of patch 06, these patches are aimed into preparing
the existing unit test infrastructure for the more sofisticated
multifunction tests to come.

First 3 Michal's patches helped me with unit test issues in
the first 3-4 patches (see [2] for more info), thus I am
relying on them being upstreamed as well. 

The whole feature can be checked out at [3]. 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://www.redhat.com/archives/libvir-list/2019-June/msg00726.html
[3] https://github.com/danielhb/libvirt/tree/multifunction_latest


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

Michal Prívozník (3):
  virpcimock: Move actions checking one level up
  Revert "virpcitest: Test virPCIDeviceDetach failure"
  virpcimock: Create driver_override file in device dirs

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                            | 276 +++++++++++++++---
 tests/virpcitest.c                            |  40 +--
 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, 726 insertions(+), 100 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.20.1

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list