All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 2/2] arm64: acpi: Prepare for longer MADTs
@ 2018-10-12 19:29 ` Jeremy Linton
  0 siblings, 0 replies; 12+ messages in thread
From: Jeremy Linton @ 2018-10-12 19:29 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: catalin.marinas, will.deacon, ard.biesheuvel, james.morse,
	rafael.j.wysocki, takahiro.akashi, lorenzo.pieralisi,
	sudeep.holla, ahs3, linux-acpi, linux-kernel, Jeremy Linton

The BAD_MADT_GICC_ENTRY check is a little too strict because
it rejects MADT entries that don't match the currently known
lengths. We should remove this restriction to avoid problems
if the table length changes. Future code which might depend on
additional fields should be written to validate those fields
before using them, rather than trying to globally check
known MADT version lengths.

Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
---
 arch/arm64/include/asm/acpi.h | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h
index 709208dfdc8b..4d0946bd485a 100644
--- a/arch/arm64/include/asm/acpi.h
+++ b/arch/arm64/include/asm/acpi.h
@@ -22,12 +22,12 @@
 #include <asm/tlbflush.h>
 
 /* Macros for consistency checks of the GICC subtable of MADT */
-#define ACPI_MADT_GICC_LENGTH	\
-	(acpi_gbl_FADT.header.revision < 6 ? 76 : 80)
+#define ACPI_MADT_GICC_MIN_LENGTH   ACPI_OFFSET(  \
+	struct acpi_madt_generic_interrupt, efficiency_class)
 
 #define BAD_MADT_GICC_ENTRY(entry, end)					\
-	(!(entry) || (entry)->header.length != ACPI_MADT_GICC_LENGTH ||	\
-	(unsigned long)(entry) + ACPI_MADT_GICC_LENGTH > (end))
+	(!(entry) || (entry)->header.length < ACPI_MADT_GICC_MIN_LENGTH || \
+	(unsigned long)(entry) + (entry)->header.length > (end))
 
 /* Basic configuration for ACPI */
 #ifdef	CONFIG_ACPI
-- 
2.14.3

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2018-11-27 16:32 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-12 19:29 [PATCH 2/2] arm64: acpi: Prepare for longer MADTs Jeremy Linton
2018-10-12 19:29 ` Jeremy Linton
2018-10-15  9:29 ` Sudeep Holla
2018-10-15  9:29   ` Sudeep Holla
2018-11-01 11:31 ` Lorenzo Pieralisi
2018-11-01 11:31   ` Lorenzo Pieralisi
2018-11-01 14:22   ` Sudeep Holla
2018-11-01 14:22     ` Sudeep Holla
2018-11-27 15:01 ` Lorenzo Pieralisi
2018-11-27 15:01   ` Lorenzo Pieralisi
2018-11-27 16:32   ` Jeremy Linton
2018-11-27 16:32     ` Jeremy Linton

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.