Linux-PCI Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v6 0/8] Fix PF/VF dependency issue
@ 2019-08-17  0:10 sathyanarayanan.kuppuswamy
  2019-08-17  0:10 ` [PATCH v6 1/8] PCI/ATS: Fix pci_prg_resp_pasid_required() dependency issues sathyanarayanan.kuppuswamy
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: sathyanarayanan.kuppuswamy @ 2019-08-17  0:10 UTC (permalink / raw)
  To: bhelgaas
  Cc: linux-pci, linux-kernel, ashok.raj, keith.busch,
	sathyanarayanan.kuppuswamy

From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>

Current implementation of ATS, PASID, PRI does not handle VF dependencies
correctly. Following patches addresses this issue.

Changes since v5:
 * Created new patches for PRI/PASID capability caching.
 * Removed individual locks (pri_lock, pasid_lock) and added common
   resource lock to synchronize PRI/PASID updates between PF/VF.
 * Addressed comments from Bjorn Helgaas.

Changes since v4:
 * Defined empty functions for pci_pri_init() and pci_pasid_init() for cases
   where CONFIG_PCI_PRI and CONFIG_PCI_PASID are not enabled.

Changes since v3:
 * Fixed critical path (lock context) in pci_restore_*_state functions.

Changes since v2:
 * Added locking mechanism to synchronize accessing PF registers in VF.
 * Removed spec compliance checks in patches.
 * Addressed comments from Bjorn Helgaas.

Changes since v1:
 * Added more details about the patches in commit log.
 * Removed bulk spec check patch.
 * Addressed comments from Bjorn Helgaas.

Kuppuswamy Sathyanarayanan (8):
  PCI/ATS: Fix pci_prg_resp_pasid_required() dependency issues
  PCI/ATS: Cache PRI capability check result
  PCI/ATS: Cache PASID capability check result
  PCI/IOV: Add pci_physfn_reslock/unlock() interfaces
  PCI/ATS: Add PRI support for PCIe VF devices
  PCI/ATS: Add PASID support for PCIe VF devices
  PCI/ATS: Disable PF/VF ATS service independently
  PCI: Skip Enhanced Allocation (EA) initialization for VF device

 drivers/pci/ats.c       | 276 +++++++++++++++++++++++++++++-----------
 drivers/pci/iov.c       |   1 +
 drivers/pci/pci.c       |   7 +
 drivers/pci/pci.h       |  40 ++++++
 include/linux/pci-ats.h |  12 +-
 include/linux/pci.h     |   5 +-
 6 files changed, 260 insertions(+), 81 deletions(-)

-- 
2.21.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, back to index

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-17  0:10 [PATCH v6 0/8] Fix PF/VF dependency issue sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 1/8] PCI/ATS: Fix pci_prg_resp_pasid_required() dependency issues sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 2/8] PCI/ATS: Cache PRI capability check result sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 3/8] PCI/ATS: Cache PASID " sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 4/8] PCI/IOV: Add pci_physfn_reslock/unlock() interfaces sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 5/8] PCI/ATS: Add PRI support for PCIe VF devices sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 6/8] PCI/ATS: Add PASID " sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 7/8] PCI/ATS: Disable PF/VF ATS service independently sathyanarayanan.kuppuswamy
2019-08-17  0:10 ` [PATCH v6 8/8] PCI: Skip Enhanced Allocation (EA) initialization for VF device sathyanarayanan.kuppuswamy

Linux-PCI Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-pci/0 linux-pci/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-pci linux-pci/ https://lore.kernel.org/linux-pci \
		linux-pci@vger.kernel.org linux-pci@archiver.kernel.org
	public-inbox-index linux-pci

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-pci


AGPL code for this site: git clone https://public-inbox.org/ public-inbox