On Tue, Feb 13, 2018 at 02:24:56PM -0500, Hook, Gary wrote: > Without actually running a driver and getting some debug info, I'll just > say that my example compiled, the amd_iommu structure points to a pci_dev > which contains a device, and the two possibilities are likely equivalent. > > I'll vet that, of course, but working under the assumption that they are > equivalent, the question becomes, do you have a preference?
They are not equivalent, your version points to the pci_dev containing the IOMMU, my version points to the (virtual) iommu-device for that particular iommu in the kernel. So the difference in the prefix is: your version: '0000:00:00.2:' vs. my version: 'ivhd0:' The latter is the better prefix, because it points to the iommu. A pci_dev can contain more than one iommu, so that prefix is not specific enough. I know that there is currently no hardware implementing multiple iommus on one pci_dev, but it is allowed according to the spec. Regards, Joerg