diff options
| -rw-r--r-- | arch/sparc64/kernel/smp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 0712a445f98e..2be166c544ca 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c | |||
| @@ -1303,10 +1303,6 @@ int __cpu_disable(void) | |||
| 1303 | c->core_id = 0; | 1303 | c->core_id = 0; |
| 1304 | c->proc_id = -1; | 1304 | c->proc_id = -1; |
| 1305 | 1305 | ||
| 1306 | ipi_call_lock(); | ||
| 1307 | cpu_clear(cpu, cpu_online_map); | ||
| 1308 | ipi_call_unlock(); | ||
| 1309 | |||
| 1310 | smp_wmb(); | 1306 | smp_wmb(); |
| 1311 | 1307 | ||
| 1312 | /* Make sure no interrupts point to this cpu. */ | 1308 | /* Make sure no interrupts point to this cpu. */ |
| @@ -1316,6 +1312,10 @@ int __cpu_disable(void) | |||
| 1316 | mdelay(1); | 1312 | mdelay(1); |
| 1317 | local_irq_disable(); | 1313 | local_irq_disable(); |
| 1318 | 1314 | ||
| 1315 | ipi_call_lock(); | ||
| 1316 | cpu_clear(cpu, cpu_online_map); | ||
| 1317 | ipi_call_unlock(); | ||
| 1318 | |||
| 1319 | return 0; | 1319 | return 0; |
| 1320 | } | 1320 | } |
| 1321 | 1321 | ||
