Make sure no timer callback is running before releasing the datastructure which contains it. Signed-off-by: Thomas Gleixner Cc: Marcel Holtmann Cc: bt --- drivers/bluetooth/bluecard_cs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: tip/drivers/bluetooth/bluecard_cs.c =================================================================== --- tip.orig/drivers/bluetooth/bluecard_cs.c +++ tip/drivers/bluetooth/bluecard_cs.c @@ -898,7 +898,7 @@ static void bluecard_release(struct pcmc bluecard_close(info); - del_timer(&(info->timer)); + del_timer_sync(&(info->timer)); pcmcia_disable_device(link); }