aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/ia64/kernel/smpboot.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/ia64/kernel/smpboot.c b/arch/ia64/kernel/smpboot.c
index 11463994a7d5..2ec5bbff461e 100644
--- a/arch/ia64/kernel/smpboot.c
+++ b/arch/ia64/kernel/smpboot.c
@@ -736,14 +736,16 @@ int __cpu_disable(void)
736 return -EBUSY; 736 return -EBUSY;
737 } 737 }
738 738
739 cpu_clear(cpu, cpu_online_map);
740
739 if (migrate_platform_irqs(cpu)) { 741 if (migrate_platform_irqs(cpu)) {
740 cpu_set(cpu, cpu_online_map); 742 cpu_set(cpu, cpu_online_map);
741 return (-EBUSY); 743 return (-EBUSY);
742 } 744 }
743 745
744 remove_siblinginfo(cpu); 746 remove_siblinginfo(cpu);
745 fixup_irqs();
746 cpu_clear(cpu, cpu_online_map); 747 cpu_clear(cpu, cpu_online_map);
748 fixup_irqs();
747 local_flush_tlb_all(); 749 local_flush_tlb_all();
748 cpu_clear(cpu, cpu_callin_map); 750 cpu_clear(cpu, cpu_callin_map);
749 return 0; 751 return 0;