Re: [RESEND PATCH v3] iommu/vt-d: Use passthrough mode for the Intel IPUs

From: Baolu Lu
Date: Thu Jan 05 2023 - 05:49:41 EST


On 2023/1/5 16:28, bingbu.cao@xxxxxxxxx wrote:
Intel IPU(Image Processing Unit) has its own (IO)MMU hardware,
The IPU driver allocates its own page table that is not mapped
via the DMA, and thus the Intel IOMMU driver blocks access giving
this error:

DMAR: DRHD: handling fault status reg 3
DMAR: [DMA Read] Request device [00:05.0] PASID ffffffff
fault addr 76406000 [fault reason 06] PTE Read access is not set

Do you mind telling why does such DMA fault occur? How does the IPU
driver map the fault address 76406000 ?

As IPU is not an external facing device which is not risky, so use
IOMMU passthrough mode for Intel IPUs.

You can also set the passthrough mode with kernel option iommu=pt
(globally) or by writing IDENTITY to

/sys/..path_to_device../iommu_group/type

(per-device).

Fixes: 26f5689592e2 ("media: staging/intel-ipu3: mmu: Implement driver")

Please don't try to fix any problem in the device driver by adding any
hard-coded quirky code in the IOMMU code.

Signed-off-by: Bingbu Cao<bingbu.cao@xxxxxxxxx>

--
Best regards,
baolu