This series enables support for PCI SR-IOV capabilty for PVH domains.
It allows Dom0 to enable and use SR-IOV virtual functions and for this
functions to be passed to guests.

To achieve this, handlers for SRIOV_CONTROL registes, simplified handlers
for VFs header, and scanning for added VFs were implemented in Xen.

Core functionality is based on previous work[1].

Tested on R-Car Spider board with Samsung NVMe SSD Controller 980 and Intel
X550T ethernet card.

[1]: 
https://lore.kernel.org/xen-devel/[email protected]/

v1->v2:
* rework the series for VF discovery in Xen
* separate doc changes into the last patch


Mykyta Poturai (4):
  vpci: Use pervcpu ranges for BAR mapping
  vpci: add a wait operation to the vpci vcpu pending actions
  pci/iommu: Check that IOMMU supports removing devices
  docs: Update SR-IOV support status

Stewart Hildebrand (4):
  vpci: rename and export vpci_modify_bars
  vpci: rename and export vpci_guest_mem_bar_{read,write}
  vpci: add SR-IOV support for PVH Dom0
  vpci: add SR-IOV support for DomUs

 SUPPORT.md                    |   2 -
 xen/common/domain.c           |  24 ++
 xen/drivers/passthrough/pci.c |   6 +
 xen/drivers/vpci/Makefile     |   2 +-
 xen/drivers/vpci/header.c     | 226 +++++++++---------
 xen/drivers/vpci/sriov.c      | 420 ++++++++++++++++++++++++++++++++++
 xen/drivers/vpci/vpci.c       |   3 -
 xen/include/xen/vpci.h        |  42 +++-
 8 files changed, 608 insertions(+), 117 deletions(-)
 create mode 100644 xen/drivers/vpci/sriov.c

-- 
2.51.2

Reply via email to