[PATCH] iommu/vt-d: Disable DMAR for Intel Q35 IGFX

Naval Alcalá posted 1 patch 2 months ago
drivers/iommu/intel/iommu.c | 3 +++
1 file changed, 3 insertions(+)
[PATCH] iommu/vt-d: Disable DMAR for Intel Q35 IGFX
Posted by Naval Alcalá 2 months ago
Intel Q35 integrated graphics (8086:29b2) exhibits broken DMAR
behaviour similar to other G4x/GM45 devices for which DMAR is
already disabled via quirks.

When DMAR is enabled, the system may hard lock up during boot or
early device initialization, requiring a reset.

This issue has been reported multiple times and remains
unresolved:
Link: https://lore.kernel.org/linux-iommu/20161205215841.GA20819@beast/
Link: https://bugzilla.kernel.org/show_bug.cgi?id=201185
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216064

Add the missing PCI ID to the existing quirk list to disable
DMAR for this device.

Signed-off-by: Naval Alcalá <ari@naval.cat>
---
 drivers/iommu/intel/iommu.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
index ef7613b177b9..8df0692e1fed 100644
--- a/drivers/iommu/intel/iommu.c
+++ b/drivers/iommu/intel/iommu.c
@@ -3933,6 +3933,9 @@ static void quirk_iommu_igfx(struct pci_dev *dev)
 	disable_igfx_iommu = 1;
 }
 
+/* Q35 integrated gfx dmar support is totally busted. */
+DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x29b2, quirk_iommu_igfx);
+
 /* G4x/GM45 integrated gfx dmar support is totally busted. */
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2a40, quirk_iommu_igfx);
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x2e00, quirk_iommu_igfx);
-- 
2.51.0

Re: [PATCH] iommu/vt-d: Disable DMAR for Intel Q35 IGFX
Posted by Baolu Lu 1 month, 1 week ago
On 4/11/26 00:16, Naval Alcalá wrote:
> Intel Q35 integrated graphics (8086:29b2) exhibits broken DMAR
> behaviour similar to other G4x/GM45 devices for which DMAR is
> already disabled via quirks.
> 
> When DMAR is enabled, the system may hard lock up during boot or
> early device initialization, requiring a reset.
> 
> This issue has been reported multiple times and remains
> unresolved:
> Link:https://lore.kernel.org/linux-iommu/20161205215841.GA20819@beast/
> Link:https://bugzilla.kernel.org/show_bug.cgi?id=201185
> Link:https://bugzilla.kernel.org/show_bug.cgi?id=216064
> 
> Add the missing PCI ID to the existing quirk list to disable
> DMAR for this device.
> 
> Signed-off-by: Naval Alcalá<ari@naval.cat>
> ---
>   drivers/iommu/intel/iommu.c | 3 +++
>   1 file changed, 3 insertions(+)

Queued for v7.1-rc. Thanks!