Make sure that no callback is running before we teardown the module. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
@@ -984,7 +984,7 @@ static void hp_sdc_exit(void)
free_irq(hp_sdc.irq, &hp_sdc);
write_unlock_irq(&hp_sdc.lock);
- del_timer(&hp_sdc.kicker);
+ del_timer_sync(&hp_sdc.kicker);
tasklet_kill(&hp_sdc.task);