Hello all,

This is next version of vPCI rework. Aim of this series is to prepare
ground for introducing PCI support on ARM platform.

This vesion includes addressed commentes from a previous one. Also it
introduces a couple patches from Stewart. This patches are related to
vPCI use on ARM. Patch "vpci/header: rework exit path in init_bars"
was factored-out from "vpci/header: handle p2m range sets per BAR".

Changes from previous versions are described in each separate patch.

Oleksandr Andrushchenko (12):
  vpci: use per-domain PCI lock to protect vpci structure
  vpci: restrict unhandled read/write operations for guests
  vpci: add hooks for PCI device assign/de-assign
  vpci/header: implement guest BAR register handlers
  rangeset: add RANGESETF_no_print flag
  vpci/header: handle p2m range sets per BAR
  vpci/header: program p2m with guest BAR view
  vpci/header: emulate PCI_COMMAND register for guests
  vpci/header: reset the command register when adding devices
  vpci: add initial support for virtual PCI bus topology
  xen/arm: translate virtual PCI bus topology for guests
  xen/arm: account IO handlers for emulated PCI MSI-X

Stewart Hildebrand (2):
  xen/arm: vpci: check guest range
  xen/arm: vpci: permit access to guest vpci space

Volodymyr Babchuk (2):
  pci: introduce per-domain PCI rwlock
  vpci/header: rework exit path in init_bars

 xen/arch/arm/vpci.c                         |  71 ++-
 xen/arch/x86/hvm/vmsi.c                     |  24 +-
 xen/arch/x86/hvm/vmx/vmx.c                  |   2 -
 xen/arch/x86/irq.c                          |  15 +-
 xen/arch/x86/msi.c                          |   8 +-
 xen/common/domain.c                         |   5 +-
 xen/common/rangeset.c                       |   5 +-
 xen/drivers/Kconfig                         |   4 +
 xen/drivers/passthrough/amd/pci_amd_iommu.c |   9 +-
 xen/drivers/passthrough/pci.c               | 103 +++-
 xen/drivers/passthrough/vtd/iommu.c         |   9 +-
 xen/drivers/vpci/header.c                   | 497 ++++++++++++++++----
 xen/drivers/vpci/msi.c                      |  32 +-
 xen/drivers/vpci/msix.c                     |  56 ++-
 xen/drivers/vpci/vpci.c                     | 158 ++++++-
 xen/include/xen/rangeset.h                  |   5 +-
 xen/include/xen/sched.h                     |   9 +
 xen/include/xen/vpci.h                      |  39 +-
 18 files changed, 868 insertions(+), 183 deletions(-)

-- 
2.41.0

Reply via email to