[PATCH 2/3] Add multi-node boot support

From: Daniel J Blueman
Date: Tue Oct 18 2011 - 04:23:15 EST


Fix booting multi-node systems with Numascale's NumaChip.

v2:
- [Daniel] rediffed and validated against 3.1-rc10

Signed-off-by: Steffen Persvold <sp@xxxxxxxxxxxxx>
Signed-off-by: Daniel J Blueman <daniel@xxxxxxxxxxxxxxxxxx>
---
arch/x86/kernel/cpu/amd.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/arch/x86/kernel/cpu/amd.c b/arch/x86/kernel/cpu/amd.c
index b13ed39..4b551f5 100644
--- a/arch/x86/kernel/cpu/amd.c
+++ b/arch/x86/kernel/cpu/amd.c
@@ -7,6 +7,7 @@
#include <asm/apic.h>
#include <asm/cpu.h>
#include <asm/pci-direct.h>
+#include <asm/numachip/numachip.h>

#ifdef CONFIG_X86_64
# include <asm/numa_64.h>
@@ -350,6 +351,12 @@ static void __cpuinit srat_detect_node(struct cpuinfo_x86 *c)
node = numa_cpu_node(cpu);
if (node == NUMA_NO_NODE)
node = per_cpu(cpu_llc_id, cpu);
+ else if (is_numachip_system()) {
+ /* fix for multi-node systems: set phys_proc_id and cpu_llc_id
+ to node number from ACPI SRAT table */
+ c->phys_proc_id = node;
+ per_cpu(cpu_llc_id, cpu) = node;
+ }

if (!node_online(node)) {
/*
--
1.7.5.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/