From: Logan Gunthorpe <logang@deltatee.com>
Date: Mon, 12 Aug 2019 11:30:36 -0600
Subject: PCI/P2PDMA: Add provider's pci_dev to pci_p2pdma_pagemap struct
Patch-mainline: v5.4-rc1
Git-commit: 0afea3814358c97e2964710ba16fbb0b54ceda0e
References: jsc#SLE-8449
The provider will be needed to figure out how to map a device.
Link: https://lore.kernel.org/r/20190730163545.4915-3-logang@deltatee.com
Link: https://lore.kernel.org/r/20190812173048.9186-3-logang@deltatee.com
Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
drivers/pci/p2pdma.c | 2 ++
1 file changed, 2 insertions(+)
--- a/drivers/pci/p2pdma.c
+++ b/drivers/pci/p2pdma.c
@@ -27,6 +27,7 @@ struct pci_p2pdma {
struct pci_p2pdma_pagemap {
struct dev_pagemap pgmap;
+ struct pci_dev *provider;
u64 bus_offset;
};
@@ -178,6 +179,7 @@ int pci_p2pdma_add_resource(struct pci_d
pgmap->res.flags = pci_resource_flags(pdev, bar);
pgmap->type = MEMORY_DEVICE_PCI_P2PDMA;
+ p2p_pgmap->provider = pdev;
p2p_pgmap->bus_offset = pci_bus_address(pdev, bar) -
pci_resource_start(pdev, bar);