]> Pileus Git - ~andy/linux/blobdiff - drivers/iommu/amd_iommu_init.c
iommu/amd: Make sure IOMMU is not considered to translate itself
[~andy/linux] / drivers / iommu / amd_iommu_init.c
index 8a7f1971d633876f0e4a5b6fea0a9ff0c367a575..68b3305a126acef6982b66977595c233a1dda813 100644 (file)
@@ -1021,6 +1021,13 @@ static int __init init_iommu_one(struct amd_iommu *iommu, struct ivhd_header *h)
        ret = init_iommu_from_acpi(iommu, h);
        if (ret)
                return ret;
+
+       /*
+        * Make sure IOMMU is not considered to translate itself. The IVRS
+        * table tells us so, but this is a lie!
+        */
+       amd_iommu_rlookup_table[iommu->devid] = NULL;
+
        init_iommu_devices(iommu);
 
        return 0;