Messages in this thread Patch in this message | | | Date | Fri, 04 Apr 2008 18:11:09 -0700 | From | Mike Travis <> | Subject | [PATCH 09/12] numa: move large array from stack to _initdata section |
| |
* Move large array "struct bootnode nodes" from stack to _initdata section to reduce amount of stack space required.
Based on: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + x86/latest .../x86/linux-2.6-x86.git + sched-devel/latest .../mingo/linux-2.6-sched-devel.git
Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@elte.hu> Cc: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Mike Travis <travis@sgi.com> --- arch/x86/mm/numa_64.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
--- linux-2.6.x86.orig/arch/x86/mm/numa_64.c +++ linux-2.6.x86/arch/x86/mm/numa_64.c @@ -411,9 +411,10 @@ static int __init split_nodes_by_size(st * Sets up the system RAM area from start_pfn to end_pfn according to the * numa=fake command-line option. */ +static struct bootnode nodes[MAX_NUMNODES] __initdata; + static int __init numa_emulation(unsigned long start_pfn, unsigned long end_pfn) { - struct bootnode nodes[MAX_NUMNODES]; u64 size, addr = start_pfn << PAGE_SHIFT; u64 max_addr = end_pfn << PAGE_SHIFT; int num_nodes = 0, num = 0, coeff_flag, coeff = -1, i; --
| |