aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/smp.c
diff options
context:
space:
mode:
authorGautham R Shenoy <ego@in.ibm.com>2008-03-10 08:14:03 -0400
committerIngo Molnar <mingo@elte.hu>2008-04-17 11:40:58 -0400
commitf694010185c429629ad5a65245da08103e611852 (patch)
tree2b430e62c2fcf59c25cf041ba5a10f5cb5e0efec /arch/x86/kernel/smp.c
parent12db648c1518b2627cc983199a97ec6f5d6a1de2 (diff)
x86: Don't send RESCHEDULE_VECTOR to offlined cpus
In the x86 native_smp_send_reschedule_function(), don't send the IPI if the cpu has gone offline already. Warn nevertheless!! Signed-off-by: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/smp.c')
-rw-r--r--arch/x86/kernel/smp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c
index 88c1e518a203..16c52aaaca35 100644
--- a/arch/x86/kernel/smp.c
+++ b/arch/x86/kernel/smp.c
@@ -118,7 +118,10 @@
118 */ 118 */
119static void native_smp_send_reschedule(int cpu) 119static void native_smp_send_reschedule(int cpu)
120{ 120{
121 WARN_ON(cpu_is_offline(cpu)); 121 if (unlikely(cpu_is_offline(cpu))) {
122 WARN_ON(1);
123 return;
124 }
122 send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR); 125 send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR);
123} 126}
124 127