From: Srivatsa Vaddagiri The sched group structures used to represent various nodes need to be allocated from respective nodes (as suggested here also: http://uwsg.ucs.indiana.edu/hypermail/linux/kernel/0603.3/0051.html) Signed-off-by: Srivatsa Vaddagiri Cc: Nick Piggin Cc: Ingo Molnar Cc: "Siddha, Suresh B" Signed-off-by: Andrew Morton --- kernel/sched.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff -puN kernel/sched.c~sched_domain-use-kmalloc_node kernel/sched.c --- devel/kernel/sched.c~sched_domain-use-kmalloc_node 2006-05-11 15:19:27.000000000 -0700 +++ devel-akpm/kernel/sched.c 2006-05-11 15:19:27.000000000 -0700 @@ -6116,7 +6116,7 @@ static int build_sched_domains(const cpu domainspan = sched_domain_node_span(i); cpus_and(domainspan, domainspan, *cpu_map); - sg = kmalloc(sizeof(struct sched_group), GFP_KERNEL); + sg = kmalloc_node(sizeof(struct sched_group), GFP_KERNEL, i); if (!sg) { printk(KERN_WARNING "Can not alloc domain group for " "node %d\n", i); @@ -6149,7 +6149,8 @@ static int build_sched_domains(const cpu if (cpus_empty(tmp)) continue; - sg = kmalloc(sizeof(struct sched_group), GFP_KERNEL); + sg = kmalloc_node(sizeof(struct sched_group), + GFP_KERNEL, i); if (!sg) { printk(KERN_WARNING "Can not alloc domain group for node %d\n", j); _