Re: [PATCH v3 01/11] PCI/P2PDMA: Support peer-to-peer memory
From: Logan Gunthorpe
Date: Tue Mar 13 2018 - 12:44:34 EST
On 12/03/18 09:28 PM, Sinan Kaya wrote:
On 3/12/2018 3:35 PM, Logan Gunthorpe wrote:
Regarding the switch business, It is amazing how much trouble you went into
limit this functionality into very specific hardware.
I thought that we reached to an agreement that code would not impose
any limits on what user wants.
What happened to all the emails we exchanged?
It turns out that root ports that support P2P are far less common than
anyone thought. So it will likely have to be a white list. Nobody else
seems keen on allowing the user to enable this on hardware that doesn't
work. The easiest solution is still limiting it to using a switch. From
there, if someone wants to start creating a white-list then that's
probably the way forward to support root ports.
And there's also the ACS problem which means if you want to use P2P on
the root ports you'll have to disable ACS on the entire system. (Or
preferably, the IOMMU groups need to get more sophisticated to allow for
dynamic changes).
Additionally, once you allow for root ports you may find the IOMMU
getting in the way.
So there are great deal more issues to sort out if you don't restrict to
devices behind switches.
Logan