aboutsummaryrefslogtreecommitdiff
path: root/arch/sparc/kernel/sun4d_smp.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-03-30 18:46:12 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-03-30 18:46:12 -0700
commitd3d52d687a770973b459d8a92ec1adbba3f60c4b (patch)
tree94318a62f25b970d604e29a9b8554afe82932d16 /arch/sparc/kernel/sun4d_smp.c
parentd17abcd5417d84cfa8a225160481203a37dc81d4 (diff)
parented223129a30de7d244ca9b59819f5532c9caf039 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Fix reset hangs on Niagara systems. cpumask: use mm_cpumask() wrapper: sparc cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL.: sparc cpumask: remove the now-obsoleted pcibus_to_cpumask(): sparc cpumask: remove cpu_coregroup_map: sparc cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.: sparc64 cpumask: Use accessors code.: sparc64 cpumask: Use accessors code: sparc cpumask: arch_send_call_function_ipi_mask: sparc cpumask: Use smp_call_function_many(): sparc64
Diffstat (limited to 'arch/sparc/kernel/sun4d_smp.c')
-rw-r--r--arch/sparc/kernel/sun4d_smp.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/arch/sparc/kernel/sun4d_smp.c b/arch/sparc/kernel/sun4d_smp.c
index 50afaed99c8..54fb02468f0 100644
--- a/arch/sparc/kernel/sun4d_smp.c
+++ b/arch/sparc/kernel/sun4d_smp.c
@@ -150,7 +150,7 @@ void __cpuinit smp4d_callin(void)
spin_lock_irqsave(&sun4d_imsk_lock, flags);
cc_set_imsk(cc_get_imsk() & ~0x4000); /* Allow PIL 14 as well */
spin_unlock_irqrestore(&sun4d_imsk_lock, flags);
- cpu_set(cpuid, cpu_online_map);
+ set_cpu_online(cpuid, true);
}
@@ -228,11 +228,10 @@ void __init smp4d_smp_done(void)
/* setup cpu list for irq rotation */
first = 0;
prev = &first;
- for (i = 0; i < NR_CPUS; i++)
- if (cpu_online(i)) {
- *prev = i;
- prev = &cpu_data(i).next;
- }
+ for_each_online_cpu(i) {
+ *prev = i;
+ prev = &cpu_data(i).next;
+ }
*prev = first;
local_flush_cache_all();