summaryrefslogtreecommitdiffstats
path: root/arch/sparc64/kernel/irq.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-09-09 02:21:07 +0200
committerDavid S. Miller <davem@davemloft.net>2008-09-09 02:21:07 +0200
commit2eb2f77900d62796934bcd43c4089e444cf1179e (patch)
tree98607df5b7d540c4182d171a8d7d1aff550a081f /arch/sparc64/kernel/irq.c
parentsparc64: Prevent sparc64 from invoking irq handlers on offline CPUs (diff)
downloadlinux-2eb2f77900d62796934bcd43c4089e444cf1179e.tar.xz
linux-2eb2f77900d62796934bcd43c4089e444cf1179e.zip
sparc64: Disable timer interrupts in fixup_irqs().
When a CPU is offlined, we leave the timer interrupts disabled because fixup_irqs() does not explicitly take care of that case. Fix this by invoking tick_ops->disable_irq(). Based upon analysis done by Paul E. McKenney. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/irq.c')
-rw-r--r--arch/sparc64/kernel/irq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/irq.c b/arch/sparc64/kernel/irq.c
index 9b6689d9d570..23963882bc18 100644
--- a/arch/sparc64/kernel/irq.c
+++ b/arch/sparc64/kernel/irq.c
@@ -792,6 +792,8 @@ void fixup_irqs(void)
}
spin_unlock_irqrestore(&irq_desc[irq].lock, flags);
}
+
+ tick_ops->disable_irq();
}
#endif