aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86/topology.h
diff options
context:
space:
mode:
authortravis@sgi.com <travis@sgi.com>2008-01-30 07:33:11 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:11 -0500
commitdf3825c56dd70a4d7796041388f3cfe51c1db832 (patch)
tree6110ef6ce26704679b9d13399e2aa368f3430126 /include/asm-x86/topology.h
parent3b41908902df1dba141cd7de1a727bb03718a654 (diff)
x86: change NR_CPUS arrays in numa_64
Change the following static arrays sized by NR_CPUS to per_cpu data variables: char cpu_to_node_map[NR_CPUS]; Signed-off-by: Mike Travis <travis@sgi.com> Reviewed-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/asm-x86/topology.h')
-rw-r--r--include/asm-x86/topology.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/include/asm-x86/topology.h b/include/asm-x86/topology.h
index f8706b2a3d88..e612ed8d2bc7 100644
--- a/include/asm-x86/topology.h
+++ b/include/asm-x86/topology.h
@@ -30,13 +30,24 @@
30#include <asm/mpspec.h> 30#include <asm/mpspec.h>
31 31
32/* Mappings between logical cpu number and node number */ 32/* Mappings between logical cpu number and node number */
33extern u16 cpu_to_node_map[]; 33DECLARE_PER_CPU(u16, x86_cpu_to_node_map);
34extern u16 __initdata x86_cpu_to_node_map_init[];
35extern void *x86_cpu_to_node_map_early_ptr;
34extern cpumask_t node_to_cpumask_map[]; 36extern cpumask_t node_to_cpumask_map[];
35 37
38#define NUMA_NO_NODE ((u16)(~0))
39
36/* Returns the number of the node containing CPU 'cpu' */ 40/* Returns the number of the node containing CPU 'cpu' */
37static inline int cpu_to_node(int cpu) 41static inline int cpu_to_node(int cpu)
38{ 42{
39 return cpu_to_node_map[cpu]; 43 u16 *cpu_to_node_map = (u16 *)x86_cpu_to_node_map_early_ptr;
44
45 if (cpu_to_node_map)
46 return cpu_to_node_map[cpu];
47 else if (per_cpu_offset(cpu))
48 return per_cpu(x86_cpu_to_node_map, cpu);
49 else
50 return NUMA_NO_NODE;
40} 51}
41 52
42/* 53/*