On Mon, May 03, 2021 at 02:54:26PM -0700, John Hubbard wrote: > I guess my main concern here is that there are these pci*() functions > that somehow want to pass around struct device. Well, this is the main issue - helpers being used inside IOMMU code should not be called pci* functions. This is some generic device p2p interface that happens to only support PCI to PCI transfers today. Jason