aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/kernel/acpi
diff options
context:
space:
mode:
authorStarikovskiy, Alexey Y <alexey.y.starikovskiy@intel.com>2006-08-18 11:23:00 -0400
committerLen Brown <len.brown@intel.com>2006-08-18 12:56:50 -0400
commitdf6fd31995cb2e38b2a7e94bc8f1559b8f55404e (patch)
treeb6e14215a9a9757d6f149c75b5543a31c0f6766e /arch/i386/kernel/acpi
parentACPI: avoid irqrouter_resume might_sleep oops on resume from S4 (diff)
downloadlinux-dev-df6fd31995cb2e38b2a7e94bc8f1559b8f55404e.tar.xz
linux-dev-df6fd31995cb2e38b2a7e94bc8f1559b8f55404e.zip
ACPI: relax BAD_MADT_ENTRY check to allow LSAPIC variable length string UIDs
ACPI 3.0 appended a variable length UID string to the LAPIC structure as part of support for > 256 processors. So the BAD_MADT_ENTRY() sanity check can no longer compare for equality with a fixed structure length. Signed-off-by: Alexey Y Starikovskiy <alexey.y.starikovskiy@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'arch/i386/kernel/acpi')
-rw-r--r--arch/i386/kernel/acpi/boot.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c
index 0db6387025ca..ee003bc0e8b1 100644
--- a/arch/i386/kernel/acpi/boot.c
+++ b/arch/i386/kernel/acpi/boot.c
@@ -59,7 +59,7 @@ static inline int gsi_irq_sharing(int gsi) { return gsi; }
#define BAD_MADT_ENTRY(entry, end) ( \
(!entry) || (unsigned long)entry + sizeof(*entry) > end || \
- ((acpi_table_entry_header *)entry)->length != sizeof(*entry))
+ ((acpi_table_entry_header *)entry)->length < sizeof(*entry))
#define PREFIX "ACPI: "