Message ID | 20240130060823.57990-1-baolu.lu@linux.intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,1/1] iommu/vt-d: Remove INTEL_IOMMU_BROKEN_GFX_WA | expand |
> From: Lu Baolu <baolu.lu@linux.intel.com> > Sent: Tuesday, January 30, 2024 2:08 PM > > Commit 62edf5dc4a524 ("intel-iommu: Restore DMAR_BROKEN_GFX_WA > option for > broken graphics drivers") was introduced 24 years ago as a temporary > workaround for graphics drivers that used physical addresses for DMA and > avoided DMA APIs. This workaround was disabled by default. > > As 24 years have passed, it is expected that graphics driver developers > have migrated their drivers to use kernel DMA APIs. Therefore, this > workaround is no longer required and could been removed. > > The Intel iommu driver also provides a "igfx_off" option to turn off > the DAM translation for the graphic dedicated IOMMU. Hence, there is > really no good reason to keep this config option. > s/DAM/DMA/
On 2024/1/30 14:24, Tian, Kevin wrote: >> From: Lu Baolu <baolu.lu@linux.intel.com> >> Sent: Tuesday, January 30, 2024 2:08 PM >> >> Commit 62edf5dc4a524 ("intel-iommu: Restore DMAR_BROKEN_GFX_WA >> option for >> broken graphics drivers") was introduced 24 years ago as a temporary >> workaround for graphics drivers that used physical addresses for DMA and >> avoided DMA APIs. This workaround was disabled by default. >> >> As 24 years have passed, it is expected that graphics driver developers >> have migrated their drivers to use kernel DMA APIs. Therefore, this >> workaround is no longer required and could been removed. >> >> The Intel iommu driver also provides a "igfx_off" option to turn off >> the DAM translation for the graphic dedicated IOMMU. Hence, there is >> really no good reason to keep this config option. >> > > s/DAM/DMA/ Fixed. :-) Best regards, baolu
On 1/30/24 2:08 PM, Lu Baolu wrote: > Commit 62edf5dc4a524 ("intel-iommu: Restore DMAR_BROKEN_GFX_WA option for > broken graphics drivers") was introduced 24 years ago as a temporary > workaround for graphics drivers that used physical addresses for DMA and > avoided DMA APIs. This workaround was disabled by default. > > As 24 years have passed, it is expected that graphics driver developers > have migrated their drivers to use kernel DMA APIs. Therefore, this > workaround is no longer required and could been removed. > > The Intel iommu driver also provides a "igfx_off" option to turn off > the DAM translation for the graphic dedicated IOMMU. Hence, there is > really no good reason to keep this config option. > > Suggested-by: Kevin Tian<kevin.tian@intel.com> > Signed-off-by: Lu Baolu<baolu.lu@linux.intel.com> > Reviewed-by: Kevin Tian<kevin.tian@intel.com> > --- > drivers/iommu/intel/iommu.c | 4 ---- > drivers/iommu/intel/Kconfig | 11 ----------- > 2 files changed, 15 deletions(-) I have queued this patch for v6.9. Best regards, baolu
diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c index 6fb5f6fceea1..fc52fcd786aa 100644 --- a/drivers/iommu/intel/iommu.c +++ b/drivers/iommu/intel/iommu.c @@ -2660,10 +2660,6 @@ static int __init init_dmars(void) iommu_set_root_entry(iommu); } -#ifdef CONFIG_INTEL_IOMMU_BROKEN_GFX_WA - dmar_map_gfx = 0; -#endif - if (!dmar_map_gfx) iommu_identity_mapping |= IDENTMAP_GFX; diff --git a/drivers/iommu/intel/Kconfig b/drivers/iommu/intel/Kconfig index 012cd2541a68..d2d34eb28d94 100644 --- a/drivers/iommu/intel/Kconfig +++ b/drivers/iommu/intel/Kconfig @@ -64,17 +64,6 @@ config INTEL_IOMMU_DEFAULT_ON one is found. If this option is not selected, DMAR support can be enabled by passing intel_iommu=on to the kernel. -config INTEL_IOMMU_BROKEN_GFX_WA - bool "Workaround broken graphics drivers (going away soon)" - depends on BROKEN && X86 - help - Current Graphics drivers tend to use physical address - for DMA and avoid using DMA APIs. Setting this config - option permits the IOMMU driver to set a unity map for - all the OS-visible memory. Hence the driver can continue - to use physical addresses for DMA, at least until this - option is removed in the 2.6.32 kernel. - config INTEL_IOMMU_FLOPPY_WA def_bool y depends on X86