On 2/14/2018 6:49 AM, Joerg Roedel wrote:
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.
Excellent; specificity is good. I'll crank a new version using that
iommu mailing list