Since migrating to the 'set-state' interface the cs5535 driver causes a crash after loading: Right after initialization, the IRQ handler (mfgpt_tick) is triggered with clock event device in detached state. This state not properly handled and causes a crash through NULL pointer dereference upon calling the clockevent's event_handler. This patch fixes this by handling the detached state the same way the shutdown state is handled. Fixes: 8f9327cbb6e8 ("clockevents/drivers/cs5535: Migrate to new 'set-state' interface") Cc: stable@xxxxxxxxxxxxxxx Cc: Andres Salomon <dilinger@xxxxxxxxxx> Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx> Signed-off-by: David Gstir <david@xxxxxxxxxxxxx> --- drivers/clocksource/cs5535-clockevt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/clocksource/cs5535-clockevt.c b/drivers/clocksource/cs5535-clockevt.c index 9a7e37cf56b0..649e0cd90805 100644 --- a/drivers/clocksource/cs5535-clockevt.c +++ b/drivers/clocksource/cs5535-clockevt.c @@ -117,7 +117,8 @@ static irqreturn_t mfgpt_tick(int irq, void *dev_id) /* Turn off the clock (and clear the event) */ disable_timer(cs5535_event_clock); - if (clockevent_state_shutdown(&cs5535_clockevent)) + if (clockevent_state_shutdown(&cs5535_clockevent) || + clockevent_state_detached(&cs5535_clockevent)) return IRQ_HANDLED; /* Clear the counter */ -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html