2014-02-13 7:11 GMT+08:00 Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>: > Hi Barry, > > On Mon, Feb 10, 2014 at 06:07:39PM +0800, Barry Song wrote: >> >> static int sirfsoc_pwrc_remove(struct platform_device *pdev) >> { >> + struct sirfsoc_pwrc_drvdata *pwrcdrv = dev_get_drvdata(&pdev->dev); >> + >> device_init_wakeup(&pdev->dev, 0); >> >> + cancel_delayed_work_sync(&pwrcdrv->work); >> + > > This is racy: interrupt is freed later and can schedule work again. thanks, Dmitry. i will do a manual devm_free_irq() before cancelling the work and before devres removes the resources. > > Thanks. > > -- > Dmitry -barry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html