From: Kurt Garloff Subject: Store SRAT table revision References: bnc#503038 In SRAT v1, we had 8bit proximity domain (PXM) fields; SRAT v2 provides 32bits for these. The new fields were reserved before. According to the ACPI spec, the OS must disregrard reserved fields. In order to know whether or not, we must know what version the SRAT table has. This patch stores the SRAT table revision for later consumption by arch specific __init functions. This is patch 1/3. Signed-off-by: Kurt Garloff diff -r a4ed8abcc815 drivers/acpi/numa.c --- a/drivers/acpi/numa.c Sat May 16 13:41:28 2009 -0700 +++ b/drivers/acpi/numa.c Mon May 18 10:45:40 2009 +0200 @@ -42,6 +42,8 @@ static int node_to_pxm_map[MAX_NUMNODES] = { [0 ... MAX_NUMNODES - 1] = PXM_INVAL }; +unsigned char acpi_srat_revision __initdata; + int pxm_to_node(int pxm) { if (pxm < 0) @@ -266,6 +268,7 @@ return -EINVAL; srat = (struct acpi_table_srat *)table; + acpi_srat_revision = srat->header.revision; return 0; } diff -r a4ed8abcc815 include/acpi/acpi_numa.h --- a/include/acpi/acpi_numa.h Sat May 16 13:41:28 2009 -0700 +++ b/include/acpi/acpi_numa.h Mon May 18 10:45:40 2009 +0200 @@ -15,6 +15,7 @@ extern int node_to_pxm(int); extern void __acpi_map_pxm_to_node(int, int); extern int acpi_map_pxm_to_node(int); +extern unsigned char acpi_srat_revision; #endif /* CONFIG_ACPI_NUMA */ #endif /* __ACP_NUMA_H */