aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2008-11-25 06:56:12 -0500
committerJoerg Roedel <joerg.roedel@amd.com>2008-12-03 06:20:46 -0500
commitf91ba190648be4ff127d6aaf3993ac19d66dc2c2 (patch)
tree1e56d253b20759ca9c11fba0dd8ca5b243b8e47e /arch/x86
parenteac9fbc6a90ab3440f4d98a8c52b15a724fc6f4f (diff)
AMD IOMMU: set device table entry for aliased devices
In some rare cases a request can arrive an IOMMU with its originial requestor id even it is aliased. Handle this by setting the device table entry to the same protection domain for the original and the aliased requestor id. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kernel/amd_iommu.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/amd_iommu.c b/arch/x86/kernel/amd_iommu.c
index e4899e0e8787..a232e5a85d48 100644
--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -858,6 +858,9 @@ static int get_device_resources(struct device *dev,
858 print_devid(_bdf, 1); 858 print_devid(_bdf, 1);
859 } 859 }
860 860
861 if (domain_for_device(_bdf) == NULL)
862 set_device_domain(*iommu, *domain, _bdf);
863
861 return 1; 864 return 1;
862} 865}
863 866