diff options
| -rw-r--r-- | arch/x86/kernel/amd_iommu_init.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c index c1b17e97252e..f00f489ab150 100644 --- a/arch/x86/kernel/amd_iommu_init.c +++ b/arch/x86/kernel/amd_iommu_init.c | |||
| @@ -1242,12 +1242,18 @@ int __init amd_iommu_init(void) | |||
| 1242 | if (ret) | 1242 | if (ret) |
| 1243 | goto free; | 1243 | goto free; |
| 1244 | 1244 | ||
| 1245 | ret = amd_iommu_init_dma_ops(); | 1245 | if (iommu_pass_through) |
| 1246 | ret = amd_iommu_init_passthrough(); | ||
| 1247 | else | ||
| 1248 | ret = amd_iommu_init_dma_ops(); | ||
| 1246 | if (ret) | 1249 | if (ret) |
| 1247 | goto free; | 1250 | goto free; |
| 1248 | 1251 | ||
| 1249 | enable_iommus(); | 1252 | enable_iommus(); |
| 1250 | 1253 | ||
| 1254 | if (iommu_pass_through) | ||
| 1255 | goto out; | ||
| 1256 | |||
| 1251 | printk(KERN_INFO "AMD IOMMU: device isolation "); | 1257 | printk(KERN_INFO "AMD IOMMU: device isolation "); |
| 1252 | if (amd_iommu_isolate) | 1258 | if (amd_iommu_isolate) |
| 1253 | printk("enabled\n"); | 1259 | printk("enabled\n"); |
