On 05/08/2018 05:27 PM, Stephen Bates wrote:
> Well, p2p DMA is a function of a cooperating 'agent' somewhere above the two
> That agent should 'request' to the kernel that ACS be
removed/circumvented (p2p enabled) btwn two endpoints.
> I recommend doing so via a sysfs method.
Yes we looked at something like this in the past but it does hit the IOMMU grouping issue
I discussed earlier today which is not acceptable right now. In the long term, once we get
IOMMU grouping callbacks to VMs we can look at extending p2pdma in this way. But I
don't think this is viable for the initial series.
> So I don't understand the comments why VMs should need to know.
As I understand it VMs need to know because VFIO passes IOMMU grouping up into the VMs.
So if a IOMMU grouping changes the VM's view of its PCIe topology changes. I think we
even have to be cognizant of the fact the OS running on the VM may not even support
hot-plug of PCI devices.
Really? IOMMU groups are created by the kernel, so don't know how they would be passed
into the VMs, unless indirectly via PCI(e) layout.
At best, twiddling w/ACS enablement (emulation) would cause VMs to see different IOMMU
groups, but again, VMs are not the security point/level, the host/HV's are.
> Is there a thread I need to read up to explain /clear-up the thoughts above?
If you search for p2pdma you should find the previous discussions. Thanks for the input!