On Tue, 11 Mar 2014, Vinod Koul wrote: > On Mon, Mar 10, 2014 at 08:13:57PM +0100, Thomas Gleixner wrote: > > > > On Mon, 10 Mar 2014, Vinod Koul wrote: > > > > > As discussed in [1] the tasklet_disable is not a proper function for teardown. > > > The driver also uses correct method of tasklet_kill. So remove tasklet_disable > > > > > > [1]: http://lwn.net/Articles/588457/ > > > > Please add an explanation why that driver is otherwise safe. > sure... > > > Adding below as changelog to this, pls let me know if you are okay with this > > ---- > > As discussed in [1] the tasklet_disable is not a proper function for teardown. > We need to ensure irq is disabled, followed by ensuring that don't schedule any > more tasklets and then its safe to use tasklet_kill(). > > Here in at_hdmac driver we use free_irq() before tasklet_kill(). The free_irq() > will ensure that the irq is disabled and also wait till all scheduled interrupts > are executed by invoking synchronize_irq(). So we need to only do tasklet_kill() > after invoking free_irq() > > [1]: http://lwn.net/Articles/588457/ Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html