Re: [PATCH 4/5] iommu/vt-d: Add support for static identity domain

From: Baolu Lu
Date: Thu Nov 30 2023 - 01:10:00 EST


On 2023/11/30 4:28, Jason Gunthorpe wrote:
On Wed, Nov 29, 2023 at 04:26:15PM -0400, Jason Gunthorpe wrote:
On Mon, Nov 20, 2023 at 07:29:43PM +0800, Lu Baolu wrote:

@@ -2311,6 +2316,13 @@ static int device_def_domain_type(struct device *dev)
return IOMMU_DOMAIN_IDENTITY;
}
+ /*
+ * Hardware does not support the passthrough translation mode.
+ * Always use a dynamaic mapping domain.
+ */
+ if (!ecap_pass_through(iommu->ecap))
+ return IOMMU_DOMAIN_DMA;
+
Doesn't this return from def_domain_type completely prevent using an
identity domain?

I thought the point of this was to allow the identity domain but have
it be translating?
I suppose the answer is the next patch deletes that stuff.

I would probably have structured this in the other order, first add
this hunk and say that old HW is being de-supported. Remove all the
now-dead code creating the 1:1 page table, then refactor the remainder
to create the global static.

Okay, that would be more readable.

Best regards,
baolu