提交 d7f07769 编写于 作者: J Joerg Roedel

x86/amd-iommu: Fall back to GART if initialization fails

This patch implements a fallback to the GART IOMMU if this
is possible and the AMD IOMMU initialization failed.
Otherwise the fallback would be nommu which is very
problematic on machines with more than 4GB of memory or
swiotlb which hurts io-performance.

Cc: stable@kernel.org
Signed-off-by: NJoerg Roedel <joerg.roedel@amd.com>
上级 e82752d8
...@@ -2330,10 +2330,6 @@ int __init amd_iommu_init_dma_ops(void) ...@@ -2330,10 +2330,6 @@ int __init amd_iommu_init_dma_ops(void)
iommu_detected = 1; iommu_detected = 1;
swiotlb = 0; swiotlb = 0;
#ifdef CONFIG_GART_IOMMU
gart_iommu_aperture_disabled = 1;
gart_iommu_aperture = 0;
#endif
/* Make the driver finally visible to the drivers */ /* Make the driver finally visible to the drivers */
dma_ops = &amd_iommu_dma_ops; dma_ops = &amd_iommu_dma_ops;
......
...@@ -1358,6 +1358,15 @@ static int __init amd_iommu_init(void) ...@@ -1358,6 +1358,15 @@ static int __init amd_iommu_init(void)
free_unity_maps(); free_unity_maps();
#ifdef CONFIG_GART_IOMMU
/*
* We failed to initialize the AMD IOMMU - try fallback to GART
* if possible.
*/
gart_iommu_init();
#endif
goto out; goto out;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册