diff options
author | travis@sgi.com <travis@sgi.com> | 2008-01-30 07:33:25 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-01-30 07:33:25 -0500 |
commit | 4323838215184f5a2f081e0d17b8d60731b03164 (patch) | |
tree | eb3553a15c127604044e6919c9c4a92cdb1b703a /include | |
parent | 409a7b859ddb6e0a615d9f3ccddedaec218c56b6 (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 'include')
-rw-r--r-- | include/asm-x86/mmzone_64.h | 6 | ||||
-rw-r--r-- | include/asm-x86/numa_64.h | 2 | ||||
-rw-r--r-- | include/asm-x86/topology.h | 10 |
3 files changed, 9 insertions, 9 deletions
diff --git a/include/asm-x86/mmzone_64.h b/include/asm-x86/mmzone_64.h index b0c25ae111d9..ebaf9663aa8a 100644 --- a/include/asm-x86/mmzone_64.h +++ b/include/asm-x86/mmzone_64.h | |||
@@ -15,9 +15,9 @@ | |||
15 | struct memnode { | 15 | struct memnode { |
16 | int shift; | 16 | int shift; |
17 | unsigned int mapsize; | 17 | unsigned int mapsize; |
18 | u8 *map; | 18 | s16 *map; |
19 | u8 embedded_map[64-16]; | 19 | s16 embedded_map[64-8]; |
20 | } ____cacheline_aligned; /* total size = 64 bytes */ | 20 | } ____cacheline_aligned; /* total size = 128 bytes */ |
21 | extern struct memnode memnode; | 21 | extern struct memnode memnode; |
22 | #define memnode_shift memnode.shift | 22 | #define memnode_shift memnode.shift |
23 | #define memnodemap memnode.map | 23 | #define memnodemap memnode.map |
diff --git a/include/asm-x86/numa_64.h b/include/asm-x86/numa_64.h index c797cd523d2b..15fe07cde586 100644 --- a/include/asm-x86/numa_64.h +++ b/include/asm-x86/numa_64.h | |||
@@ -20,7 +20,7 @@ extern void numa_set_node(int cpu, int node); | |||
20 | extern void srat_reserve_add_area(int nodeid); | 20 | extern void srat_reserve_add_area(int nodeid); |
21 | extern int hotadd_percent; | 21 | extern int hotadd_percent; |
22 | 22 | ||
23 | extern u16 apicid_to_node[MAX_LOCAL_APIC]; | 23 | extern s16 apicid_to_node[MAX_LOCAL_APIC]; |
24 | 24 | ||
25 | extern void numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn); | 25 | extern void numa_initmem_init(unsigned long start_pfn, unsigned long end_pfn); |
26 | extern unsigned long numa_free_all_bootmem(void); | 26 | extern unsigned long numa_free_all_bootmem(void); |
diff --git a/include/asm-x86/topology.h b/include/asm-x86/topology.h index 7b0cce2f370d..8af05a93f097 100644 --- a/include/asm-x86/topology.h +++ b/include/asm-x86/topology.h | |||
@@ -31,11 +31,11 @@ | |||
31 | 31 | ||
32 | /* Mappings between logical cpu number and node number */ | 32 | /* Mappings between logical cpu number and node number */ |
33 | #ifdef CONFIG_X86_32 | 33 | #ifdef CONFIG_X86_32 |
34 | extern u8 cpu_to_node_map[]; | 34 | extern int cpu_to_node_map[]; |
35 | 35 | ||
36 | #else | 36 | #else |
37 | DECLARE_PER_CPU(u16, x86_cpu_to_node_map); | 37 | DECLARE_PER_CPU(int, x86_cpu_to_node_map); |
38 | extern u16 x86_cpu_to_node_map_init[]; | 38 | extern int x86_cpu_to_node_map_init[]; |
39 | extern void *x86_cpu_to_node_map_early_ptr; | 39 | extern void *x86_cpu_to_node_map_early_ptr; |
40 | /* Returns the number of the current Node. */ | 40 | /* Returns the number of the current Node. */ |
41 | #define numa_node_id() (early_cpu_to_node(raw_smp_processor_id())) | 41 | #define numa_node_id() (early_cpu_to_node(raw_smp_processor_id())) |
@@ -43,7 +43,7 @@ extern void *x86_cpu_to_node_map_early_ptr; | |||
43 | 43 | ||
44 | extern cpumask_t node_to_cpumask_map[]; | 44 | extern cpumask_t node_to_cpumask_map[]; |
45 | 45 | ||
46 | #define NUMA_NO_NODE ((u16)(~0)) | 46 | #define NUMA_NO_NODE (-1) |
47 | 47 | ||
48 | /* Returns the number of the node containing CPU 'cpu' */ | 48 | /* Returns the number of the node containing CPU 'cpu' */ |
49 | #ifdef CONFIG_X86_32 | 49 | #ifdef CONFIG_X86_32 |
@@ -56,7 +56,7 @@ static inline int cpu_to_node(int cpu) | |||
56 | #else /* CONFIG_X86_64 */ | 56 | #else /* CONFIG_X86_64 */ |
57 | static inline int early_cpu_to_node(int cpu) | 57 | static inline int early_cpu_to_node(int cpu) |
58 | { | 58 | { |
59 | u16 *cpu_to_node_map = x86_cpu_to_node_map_early_ptr; | 59 | int *cpu_to_node_map = x86_cpu_to_node_map_early_ptr; |
60 | 60 | ||
61 | if (cpu_to_node_map) | 61 | if (cpu_to_node_map) |
62 | return cpu_to_node_map[cpu]; | 62 | return cpu_to_node_map[cpu]; |