[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1318926156-25504-2-git-send-email-daniel@numascale-asia.com>
Date: Tue, 18 Oct 2011 16:22:35 +0800
From: Daniel J Blueman <daniel@...ascale-asia.com>
To: Ingo Molnar <mingo@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
H Peter Anvin <hpa@...or.com>
Cc: Steffen Persvold <sp@...ascale.com>, linux-kernel@...r.kernel.org,
x86@...nel.org, Daniel J Blueman <daniel@...ascale-asia.com>
Subject: [PATCH 2/3] Add multi-node boot support
Fix booting multi-node systems with Numascale's NumaChip.
v2:
- [Daniel] rediffed and validated against 3.1-rc10
Signed-off-by: Steffen Persvold <sp@...ascale.com>
Signed-off-by: Daniel J Blueman <daniel@...ascale-asia.com>
---
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists