ARM: twd: register clockevents device before enabling PPI
authorWill Deacon <will.deacon@arm.com>
Wed, 20 Jul 2011 13:18:46 +0000 (14:18 +0100)
committerJason Kridner <jdk@ti.com>
Sat, 17 Sep 2011 13:14:29 +0000 (09:14 -0400)
commitff1850753ab6baf9ddf82bf153ef2c742b2dcf98
tree392b9b518cf8ae055ca72200f8403b7940b67fec
parent6e97839f6ca7ea32b9e5735420926d6bc6a6452b
ARM: twd: register clockevents device before enabling PPI

The smp_twd clockevents driver currently enables the local timer PPI
before the clockevents device is registered. This can lead to a kernel
panic if a spurious timer interrupt is generated before registration
has completed since the kernel will treat it as an IPI timer.

This patch moves the clockevents device registration before the IRQ
unmasking so that we can always handle timer interrupts once they can
occur.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
(cherry picked from commit dfc40b24c0a37593724f3317cd485c73ee878c18)
arch/arm/kernel/smp_twd.c