diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2022-01-13 18:57:44 +0300 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2022-01-13 18:57:44 +0300 |
commit | c6ff0f8dc05fc4137e0bc4a2e2d468430027df98 (patch) | |
tree | e7ce78d2f29d417bfaefdd2e3c104454cbf5425d | |
parent | 446cc1c51a5a562fea13bdf875d77e813615058d (diff) | |
parent | 69f457b18fa2b9a793ce61e8d1cf295983aca3a9 (diff) | |
download | linux-c6ff0f8dc05fc4137e0bc4a2e2d468430027df98.tar.xz |
Merge branch 'pci/p2pdma'
- Add Logan Gunthorpe as P2PDMA maintainer (Bjorn Helgaas)
- Optimize by using percpu_ref_tryget_live_rcu() inside RCU critical
section (Christophe JAILLET)
* pci/p2pdma:
PCI/P2PDMA: Use percpu_ref_tryget_live_rcu() inside RCU critical section
MAINTAINERS: Add Logan Gunthorpe as P2PDMA maintainer
-rw-r--r-- | MAINTAINERS | 13 | ||||
-rw-r--r-- | drivers/pci/p2pdma.c | 2 |
2 files changed, 14 insertions, 1 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index 7a2345ce8521..ea59e32e1e81 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -14717,6 +14717,19 @@ L: linux-pci@vger.kernel.org S: Supported F: Documentation/PCI/pci-error-recovery.rst +PCI PEER-TO-PEER DMA (P2PDMA) +M: Bjorn Helgaas <bhelgaas@google.com> +M: Logan Gunthorpe <logang@deltatee.com> +L: linux-pci@vger.kernel.org +S: Supported +Q: https://patchwork.kernel.org/project/linux-pci/list/ +B: https://bugzilla.kernel.org +C: irc://irc.oftc.net/linux-pci +T: git git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git +F: Documentation/driver-api/pci/p2pdma.rst +F: drivers/pci/p2pdma.c +F: include/linux/pci-p2pdma.h + PCI MSI DRIVER FOR ALTERA MSI IP M: Joyce Ooi <joyce.ooi@intel.com> L: linux-pci@vger.kernel.org diff --git a/drivers/pci/p2pdma.c b/drivers/pci/p2pdma.c index 8d47cb7218d1..081c391690d4 100644 --- a/drivers/pci/p2pdma.c +++ b/drivers/pci/p2pdma.c @@ -710,7 +710,7 @@ void *pci_alloc_p2pmem(struct pci_dev *pdev, size_t size) if (!ret) goto out; - if (unlikely(!percpu_ref_tryget_live(ref))) { + if (unlikely(!percpu_ref_tryget_live_rcu(ref))) { gen_pool_free(p2pdma->pool, (unsigned long) ret, size); ret = NULL; goto out; |