I will investigate it further. I am using DKMS-5.11 branch. The codebase I am using to build has the right definition i.e. allow P2PDMA for Zen CPU's.
Regards, Ramesh -----Original Message----- From: Alex Deucher <alexdeuc...@gmail.com> Sent: Wednesday, August 11, 2021 4:07 PM To: Kuehling, Felix <felix.kuehl...@amd.com> Cc: Errabolu, Ramesh <ramesh.errab...@amd.com>; amd-gfx list <amd-...@lists.freedesktop.org>; Maling list - DRI developers <dri-devel@lists.freedesktop.org>; Bjorn Helgaas <bhelg...@google.com>; Linux PCI <linux-...@vger.kernel.org>; LKML <linux-ker...@vger.kernel.org> Subject: Re: [PATCH] Whitelist AMD host bridge device(s) to enable P2P DMA [CAUTION: External Email] On Wed, Aug 11, 2021 at 4:50 PM Felix Kuehling <felix.kuehl...@amd.com> wrote: > > > Am 2021-08-11 um 3:29 p.m. schrieb Alex Deucher: > > On Wed, Aug 11, 2021 at 3:11 PM Ramesh Errabolu <ramesh.errab...@amd.com> > > wrote: > >> Current implementation will disallow P2P DMA if the participating > >> devices belong to different root complexes. Implementation allows > >> this default behavior to be overridden for whitelisted devices. The > >> patch adds an AMD host bridge to be whitelisted > > Why do we need this? cpu_supports_p2pdma() should return true for > > all AMD Zen CPUs. > > This is part of our on-going work to get P2P support upstream. We want > to use pci_p2pdma_distance_many to determine whether P2P is possible > between a pair of devices. This whitelist is used in this function. > This will affect the P2P links reported in the topology and it will be > double-checked in the BO mapping function to ensure a peer mapping is legal. > > I think this change is a bit free of context at the moment, as we're > still working on a few other loose ends for P2P support in our > internal branch. I'm hoping we'll have a bigger patch series for > upstreamable KFD P2P support ready in a few weeks. I also think we'll > probably want to add a few more PCI IDs for other supported AMD root > complexes. We don't need to keep adding AMD root complexes. You must be using an older kernel or something. All root complexes on all Zen platforms support P2P DMA. See: commit dea286bb71baded7d2fb4f090e3b9fd2c1ccac58 Author: Logan Gunthorpe <log...@deltatee.com> Date: Wed Jul 29 17:18:44 2020 -0600 PCI/P2PDMA: Allow P2PDMA on AMD Zen and newer CPUs Allow P2PDMA if the CPU vendor is AMD and family is 0x17 (Zen) or greater. [bhelgaas: commit log, simplify #if/#else/#endif] Link: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Fr%2F20200729231844.4653-1-logang%40deltatee.com&data=04%7C01%7CRamesh.Errabolu%40amd.com%7C7ffc96d473d4471889f808d95d0bf57b%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637643128220735445%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=vmwJP2VwKPrXwl3ngUfwN%2BJu3JWeMP0ZZMDh29evW%2Bg%3D&reserved=0 Signed-off-by: Logan Gunthorpe <log...@deltatee.com> Signed-off-by: Bjorn Helgaas <bhelg...@google.com> Reviewed-by: Alex Deucher <alexander.deuc...@amd.com> Cc: Christian König <christian.koe...@amd.com> Cc: Huang Rui <ray.hu...@amd.com> Alex > > Regards, > Felix > > > > > > Alex > > > >> Signed-off-by: Ramesh Errabolu <ramesh.errab...@amd.com> > >> --- > >> drivers/pci/p2pdma.c | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/drivers/pci/p2pdma.c b/drivers/pci/p2pdma.c index > >> 196382630363..7003bb9faf23 100644 > >> --- a/drivers/pci/p2pdma.c > >> +++ b/drivers/pci/p2pdma.c > >> @@ -305,6 +305,8 @@ static const struct pci_p2pdma_whitelist_entry { > >> {PCI_VENDOR_ID_INTEL, 0x2032, 0}, > >> {PCI_VENDOR_ID_INTEL, 0x2033, 0}, > >> {PCI_VENDOR_ID_INTEL, 0x2020, 0}, > >> + /* AMD Host Bridge Devices */ > >> + {PCI_VENDOR_ID_AMD, 0x1480, 0}, > >> {} > >> }; > >> > >> -- > >> 2.31.1 > >>