Hi,

This series is to
emulate legacy and extended capability list for dom0, including patch #1, #2, 
#3, #4.
hide legacy and extended capability when its initialization fails, including 
patch #5, #6, #7.
remove all related registers and other resources when initializing capability 
fails, including patch #8, #9, #10, #11.

Best regards,
Jiqian Chen.
---
cc: Andrew Cooper <andrew.coop...@citrix.com>
cc: Anthony PERARD <anthony.per...@vates.tech>
cc: Michal Orzel <michal.or...@amd.com>
cc: Jan Beulich <jbeul...@suse.com>
cc: Julien Grall <jul...@xen.org>
cc: "Roger Pau Monné" <roger....@citrix.com>
cc: Stefano Stabellini <sstabell...@kernel.org>
---
Jiqian Chen (11):
  vpci/header: Move emulating cap list logic into new function
  driver/pci: Get next capability without passing caps
  vpci/header: Emulate legacy capability list for dom0
  vpci/header: Emulate extended capability list for dom0
  vpci: Refactor REGISTER_VPCI_INIT
  vpci: Hide legacy capability when it fails to initialize
  vpci: Hide extended capability when it fails to initialize
  vpci: Refactor vpci_remove_register to remove matched registers
  vpci/rebar: Remove registers when init_rebar() fails
  vpci/msi: Free MSI resources when init_msi() fails
  vpci/msix: Add function to clean MSIX resources

 tools/tests/vpci/main.c    |   4 +-
 xen/drivers/pci/pci.c      |   3 +
 xen/drivers/vpci/header.c  | 174 +++++++++++++---------
 xen/drivers/vpci/msi.c     |  28 +++-
 xen/drivers/vpci/msix.c    |  27 +++-
 xen/drivers/vpci/rebar.c   |  35 +++--
 xen/drivers/vpci/vpci.c    | 290 ++++++++++++++++++++++++++++++++-----
 xen/include/xen/pci_regs.h |   1 +
 xen/include/xen/vpci.h     |  34 +++--
 xen/include/xen/xen.lds.h  |   2 +-
 10 files changed, 459 insertions(+), 139 deletions(-)

-- 
2.34.1


Reply via email to