Commit 5ed56f1a authored by David S. Miller's avatar David S. Miller
Browse files

sparc64: Use node local allocations for IRQ stacks.


Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 625d693e
...@@ -1748,22 +1748,27 @@ void __init paging_init(void) ...@@ -1748,22 +1748,27 @@ void __init paging_init(void)
#endif #endif
} }
/* Setup bootmem... */
last_valid_pfn = end_pfn = bootmem_init(phys_base);
#ifndef CONFIG_NEED_MULTIPLE_NODES
max_mapnr = last_valid_pfn;
#endif
/* Once the OF device tree and MDESC have been setup, we know /* Once the OF device tree and MDESC have been setup, we know
* the list of possible cpus. Therefore we can allocate the * the list of possible cpus. Therefore we can allocate the
* IRQ stacks. * IRQ stacks.
*/ */
for_each_possible_cpu(i) { for_each_possible_cpu(i) {
/* XXX Use node local allocations... XXX */ int node = cpu_to_node(i);
softirq_stack[i] = __va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
hardirq_stack[i] = __va(memblock_alloc(THREAD_SIZE, THREAD_SIZE));
}
/* Setup bootmem... */ softirq_stack[i] = __alloc_bootmem_node(NODE_DATA(node),
last_valid_pfn = end_pfn = bootmem_init(phys_base); THREAD_SIZE,
THREAD_SIZE, 0);
hardirq_stack[i] = __alloc_bootmem_node(NODE_DATA(node),
THREAD_SIZE,
THREAD_SIZE, 0);
}
#ifndef CONFIG_NEED_MULTIPLE_NODES
max_mapnr = last_valid_pfn;
#endif
kernel_physical_mapping_init(); kernel_physical_mapping_init();
{ {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment