Re: [PATCH v4 00/12] Initial support for SMMUv3 nested translation
From: Baolu Lu <baolu.lu@linux.intel.com>
Date: 2025-02-15 10:02:05
Also in:
kvm, linux-acpi, linux-iommu, linux-patches
From: Baolu Lu <baolu.lu@linux.intel.com>
Date: 2025-02-15 10:02:05
Also in:
kvm, linux-acpi, linux-iommu, linux-patches
On 2/14/25 20:41, Jason Gunthorpe wrote:
On Fri, Feb 14, 2025 at 01:39:52PM +0800, Baolu Lu wrote:quoted
When the IOMMU is working in scalable mode, PASID and PRI are supported. ATS will always be enabled, even if the identity domain is attached to the device, because the PASID might use PRI, which depends on ATS functionality. This might not be the best choice, but it is the simplest and functional.The arm driver keeps track of things and enables ATS when PASIDs are present
I am not aware of any VT-d hardware implementation that supports scalable mode but not PASID. If there were one, it would be worthwhile to add an optimization to avoid enabling ATS during probe if PASID is not supported.
quoted
If any device does not work with the identity domain and ATS enabled, then we can add a quirk to the driver, as we already have such a mechanism.The device should not care, as long as the HW works.. ARM has a weird quirk where one of the two ways to configure an identity domain does not work with ATS. If you have something like that as well then you have to switch ATS off if the IOMMU is in a state where it will not respond to it. Otherwise, the HW I'm aware of uses ATS pretty selectively and it may not make any real difference..quoted
quoted
I feel like we should leave "iommu: Move PRI enablement for VF to iommu driver" out for now, every driver needs this check? AMD supports SVA and PRI so it needs it too.Yes, agreed.Although, I'm wondering now, that check should be on the SVA paths as well as the iommufd path..
That appears to be a fix. Thanks, baolu