aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/mm/numa_64.c
diff options
context:
space:
mode:
authortravis@sgi.com <travis@sgi.com>2008-01-30 07:33:25 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:25 -0500
commit4323838215184f5a2f081e0d17b8d60731b03164 (patch)
treeeb3553a15c127604044e6919c9c4a92cdb1b703a /arch/x86/mm/numa_64.c
parent409a7b859ddb6e0a615d9f3ccddedaec218c56b6 (diff)
x86: change size of node ids from u8 to s16
Change the size of node ids for X86_64 from u8 to s16 to accomodate more than 32k nodes and allow for NUMA_NO_NODE (-1) to be sign extended to int. Cc: David Rientjes <rientjes@google.com> Cc: Yinghai Lu <yhlu.kernel@gmail.com> Cc: Eric Dumazet <dada1@cosmosbay.com> 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 'arch/x86/mm/numa_64.c')
-rw-r--r--arch/x86/mm/numa_64.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/arch/x86/mm/numa_64.c b/arch/x86/mm/numa_64.c
index 441af4edea59..0ca96d86cb71 100644
--- a/arch/x86/mm/numa_64.c
+++ b/arch/x86/mm/numa_64.c
@@ -31,15 +31,15 @@ bootmem_data_t plat_node_bdata[MAX_NUMNODES];
31 31
32struct memnode memnode; 32struct memnode memnode;
33 33
34u16 x86_cpu_to_node_map_init[NR_CPUS] = { 34int x86_cpu_to_node_map_init[NR_CPUS] = {
35 [0 ... NR_CPUS-1] = NUMA_NO_NODE 35 [0 ... NR_CPUS-1] = NUMA_NO_NODE
36}; 36};
37void *x86_cpu_to_node_map_early_ptr; 37void *x86_cpu_to_node_map_early_ptr;
38DEFINE_PER_CPU(u16, x86_cpu_to_node_map) = NUMA_NO_NODE; 38DEFINE_PER_CPU(int, x86_cpu_to_node_map) = NUMA_NO_NODE;
39EXPORT_PER_CPU_SYMBOL(x86_cpu_to_node_map); 39EXPORT_PER_CPU_SYMBOL(x86_cpu_to_node_map);
40EXPORT_SYMBOL(x86_cpu_to_node_map_early_ptr); 40EXPORT_SYMBOL(x86_cpu_to_node_map_early_ptr);
41 41
42u16 apicid_to_node[MAX_LOCAL_APIC] __cpuinitdata = { 42s16 apicid_to_node[MAX_LOCAL_APIC] __cpuinitdata = {
43 [0 ... MAX_LOCAL_APIC-1] = NUMA_NO_NODE 43 [0 ... MAX_LOCAL_APIC-1] = NUMA_NO_NODE
44}; 44};
45 45
@@ -63,7 +63,7 @@ static int __init populate_memnodemap(const struct bootnode *nodes,
63 unsigned long addr, end; 63 unsigned long addr, end;
64 int i, res = -1; 64 int i, res = -1;
65 65
66 memset(memnodemap, 0xff, memnodemapsize); 66 memset(memnodemap, 0xff, sizeof(s16)*memnodemapsize);
67 for (i = 0; i < numnodes; i++) { 67 for (i = 0; i < numnodes; i++) {
68 addr = nodes[i].start; 68 addr = nodes[i].start;
69 end = nodes[i].end; 69 end = nodes[i].end;
@@ -72,7 +72,7 @@ static int __init populate_memnodemap(const struct bootnode *nodes,
72 if ((end >> shift) >= memnodemapsize) 72 if ((end >> shift) >= memnodemapsize)
73 return 0; 73 return 0;
74 do { 74 do {
75 if (memnodemap[addr >> shift] != 0xff) 75 if (memnodemap[addr >> shift] != NUMA_NO_NODE)
76 return -1; 76 return -1;
77 memnodemap[addr >> shift] = i; 77 memnodemap[addr >> shift] = i;
78 addr += (1UL << shift); 78 addr += (1UL << shift);
@@ -533,7 +533,7 @@ __cpuinit void numa_add_cpu(int cpu)
533 533
534void __cpuinit numa_set_node(int cpu, int node) 534void __cpuinit numa_set_node(int cpu, int node)
535{ 535{
536 u16 *cpu_to_node_map = x86_cpu_to_node_map_early_ptr; 536 int *cpu_to_node_map = x86_cpu_to_node_map_early_ptr;
537 537
538 cpu_pda(cpu)->nodenumber = node; 538 cpu_pda(cpu)->nodenumber = node;
539 539