aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2009-05-22 06:48:05 -0400
committerJoerg Roedel <joerg.roedel@amd.com>2009-05-28 12:06:47 -0400
commit0bc252f430d6a3ac7836d40f00d0ae020593b11b (patch)
treea8a4ae4cf393588fcb03efc1370da0efd745c33f /arch
parent7455aab1f95f6464c5af3fbdee28744e73f38564 (diff)
amd-iommu: make sure only ivmd entries are parsed
The bug never triggered. But it should be fixed to protect against broken ACPI tables in the future. [ Impact: protect against broken ivrs acpi table ] Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/amd_iommu_init.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c
index 53f93db54c4d..a3a2b98bb39e 100644
--- a/arch/x86/kernel/amd_iommu_init.c
+++ b/arch/x86/kernel/amd_iommu_init.c
@@ -906,6 +906,8 @@ static int __init init_unity_map_range(struct ivmd_header *m)
906 906
907 switch (m->type) { 907 switch (m->type) {
908 default: 908 default:
909 kfree(e);
910 return 0;
909 case ACPI_IVMD_TYPE: 911 case ACPI_IVMD_TYPE:
910 e->devid_start = e->devid_end = m->devid; 912 e->devid_start = e->devid_end = m->devid;
911 break; 913 break;