lkml.org 
[lkml]   [2011]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 2/3] Add multi-node boot support
Date
Fix booting multi-node systems with Numascale's NumaChip.

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

Signed-off-by: Steffen Persvold <sp@numascale.com>
Signed-off-by: Daniel J Blueman <daniel@numascale-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


\
 
 \ /
  Last update: 2011-10-18 10:25    [W:0.093 / U:0.056 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site