diff options
Diffstat (limited to 'arch/parisc')
-rw-r--r-- | arch/parisc/kernel/smp.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c index 1fd0f0cec037..3f2fce8ce6b6 100644 --- a/arch/parisc/kernel/smp.c +++ b/arch/parisc/kernel/smp.c | |||
@@ -60,8 +60,6 @@ static int smp_debug_lvl = 0; | |||
60 | #define smp_debug(lvl, ...) do { } while(0) | 60 | #define smp_debug(lvl, ...) do { } while(0) |
61 | #endif /* DEBUG_SMP */ | 61 | #endif /* DEBUG_SMP */ |
62 | 62 | ||
63 | DEFINE_SPINLOCK(smp_lock); | ||
64 | |||
65 | volatile struct task_struct *smp_init_current_idle_task; | 63 | volatile struct task_struct *smp_init_current_idle_task; |
66 | 64 | ||
67 | /* track which CPU is booting */ | 65 | /* track which CPU is booting */ |
@@ -69,7 +67,7 @@ static volatile int cpu_now_booting __cpuinitdata; | |||
69 | 67 | ||
70 | static int parisc_max_cpus __cpuinitdata = 1; | 68 | static int parisc_max_cpus __cpuinitdata = 1; |
71 | 69 | ||
72 | DEFINE_PER_CPU(spinlock_t, ipi_lock) = SPIN_LOCK_UNLOCKED; | 70 | static DEFINE_PER_CPU(spinlock_t, ipi_lock); |
73 | 71 | ||
74 | enum ipi_message_type { | 72 | enum ipi_message_type { |
75 | IPI_NOP=0, | 73 | IPI_NOP=0, |
@@ -438,6 +436,11 @@ void __init smp_prepare_boot_cpu(void) | |||
438 | */ | 436 | */ |
439 | void __init smp_prepare_cpus(unsigned int max_cpus) | 437 | void __init smp_prepare_cpus(unsigned int max_cpus) |
440 | { | 438 | { |
439 | int cpu; | ||
440 | |||
441 | for_each_possible_cpu(cpu) | ||
442 | spin_lock_init(&per_cpu(ipi_lock, cpu)); | ||
443 | |||
441 | init_cpu_present(cpumask_of(0)); | 444 | init_cpu_present(cpumask_of(0)); |
442 | 445 | ||
443 | parisc_max_cpus = max_cpus; | 446 | parisc_max_cpus = max_cpus; |