diff options
author | KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> | 2006-03-28 17:50:51 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-03-28 21:44:15 -0500 |
commit | 0e5519548fdc8eadc3eacb49b1908d44d347fb2b (patch) | |
tree | 176d01babed4ece005f6c4715c464411c4262e9b /arch/powerpc/kernel/setup_64.c | |
parent | bab70a4af737f623de5b034976a311055308ab86 (diff) |
[PATCH] for_each_possible_cpu: powerpc
for_each_cpu() actually iterates across all possible CPUs. We've had mistakes
in the past where people were using for_each_cpu() where they should have been
iterating across only online or present CPUs. This is inefficient and
possibly buggy.
We're renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the
future.
This patch replaces for_each_cpu with for_each_possible_cpu.
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/setup_64.c')
-rw-r--r-- | arch/powerpc/kernel/setup_64.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c index 05b152299396..59aa92cd6fa4 100644 --- a/arch/powerpc/kernel/setup_64.c +++ b/arch/powerpc/kernel/setup_64.c | |||
@@ -474,7 +474,7 @@ static void __init irqstack_early_init(void) | |||
474 | * interrupt stacks must be under 256MB, we cannot afford to take | 474 | * interrupt stacks must be under 256MB, we cannot afford to take |
475 | * SLB misses on them. | 475 | * SLB misses on them. |
476 | */ | 476 | */ |
477 | for_each_cpu(i) { | 477 | for_each_possible_cpu(i) { |
478 | softirq_ctx[i] = (struct thread_info *) | 478 | softirq_ctx[i] = (struct thread_info *) |
479 | __va(lmb_alloc_base(THREAD_SIZE, | 479 | __va(lmb_alloc_base(THREAD_SIZE, |
480 | THREAD_SIZE, 0x10000000)); | 480 | THREAD_SIZE, 0x10000000)); |
@@ -507,7 +507,7 @@ static void __init emergency_stack_init(void) | |||
507 | */ | 507 | */ |
508 | limit = min(0x10000000UL, lmb.rmo_size); | 508 | limit = min(0x10000000UL, lmb.rmo_size); |
509 | 509 | ||
510 | for_each_cpu(i) | 510 | for_each_possible_cpu(i) |
511 | paca[i].emergency_sp = | 511 | paca[i].emergency_sp = |
512 | __va(lmb_alloc_base(HW_PAGE_SIZE, 128, limit)) + HW_PAGE_SIZE; | 512 | __va(lmb_alloc_base(HW_PAGE_SIZE, 128, limit)) + HW_PAGE_SIZE; |
513 | } | 513 | } |
@@ -624,7 +624,7 @@ void __init setup_per_cpu_areas(void) | |||
624 | size = PERCPU_ENOUGH_ROOM; | 624 | size = PERCPU_ENOUGH_ROOM; |
625 | #endif | 625 | #endif |
626 | 626 | ||
627 | for_each_cpu(i) { | 627 | for_each_possible_cpu(i) { |
628 | ptr = alloc_bootmem_node(NODE_DATA(cpu_to_node(i)), size); | 628 | ptr = alloc_bootmem_node(NODE_DATA(cpu_to_node(i)), size); |
629 | if (!ptr) | 629 | if (!ptr) |
630 | panic("Cannot allocate cpu data for CPU %d\n", i); | 630 | panic("Cannot allocate cpu data for CPU %d\n", i); |