On Tue, Dec 31, 2019 at 01:24:22PM -0700, Jon Derrick wrote: > Devices on the VMD domain use the VMD endpoint's requester-id and have > been relying on the VMD endpoint's dma operations. The downside of this > was that VMD domain devices would use the VMD endpoint's attributes when > doing DMA and IOMMU mapping. We can be smarter about this by only using > the VMD endpoint when mapping and providing the correct child device's > attributes during dma operations. > > This patch adds a new dma alias mechanism by adding a hint to a pci_dev > to point to a singular DMA requester's pci_dev. This integrates into the > existing dma alias infrastructure to reduce the impact of the changes > required to support this mode. If we want to lift this check into common code I think it should go into struct device, as that is what DMA operates on normally. That being said given that this insane hack only exists for braindamage in Intel hardware I'd rather keep it as isolated as possible.