x86: change NR_CPUS arrays in numa_64 fixup
Change the following static arrays sized by NR_CPUS to per_cpu data variables: char cpu_to_node_map[NR_CPUS]; fixup: - Split cpu_to_node function into "early" and "late" versions so that x86_cpu_to_node_map_early_ptr is not EXPORT'ed and the cpu_to_node inline function is more streamlined. - This also involves setting up the percpu maps as early as possible. - Fix X86_32 NUMA build errors that previous version of this patch caused. V2->V3: - add early_cpu_to_node function to keep cpu_to_node efficient - move and rename smp_set_apicids() to setup_percpu_maps() - call setup_percpu_maps() as early as possible V1->V2: - Removed extraneous casts - Fix !NUMA builds with '#ifdef CONFIG_NUMA" 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>
This commit is contained in:

committed by
Ingo Molnar

parent
ac72e7888a
commit
834beda15e
@@ -382,9 +382,10 @@ int __init acpi_scan_nodes(unsigned long start, unsigned long end)
|
||||
setup_node_bootmem(i, nodes[i].start, nodes[i].end);
|
||||
|
||||
for (i = 0; i < NR_CPUS; i++) {
|
||||
if (cpu_to_node(i) == NUMA_NO_NODE)
|
||||
int node = cpu_to_node(i);
|
||||
if (node == NUMA_NO_NODE)
|
||||
continue;
|
||||
if (!node_isset(cpu_to_node(i), node_possible_map))
|
||||
if (!node_isset(node, node_possible_map))
|
||||
numa_set_node(i, NUMA_NO_NODE);
|
||||
}
|
||||
numa_init_array();
|
||||
|
Reference in New Issue
Block a user