On Fri, Jun 07, 2013 at 07:40:40PM +0800, Qiao Zhou wrote: > kill tasklet task when free dam channel, otherwise the task may typo ^^^^
> run after related resource is released, then unknown things may > happen. Well, why would tasklet run when channel is freed. You are supposed to cleanup the DMA channel on free. Ensure all transaction are aborted Sounds like masking some issue -- ~Vinod > > Signed-off-by: Qiao Zhou <zhouq...@marvell.com> > --- > drivers/dma/mmp_tdma.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/drivers/dma/mmp_tdma.c b/drivers/dma/mmp_tdma.c > index 43d5a6c..2622b2a 100644 > --- a/drivers/dma/mmp_tdma.c > +++ b/drivers/dma/mmp_tdma.c > @@ -333,6 +333,9 @@ static void mmp_tdma_free_chan_resources(struct dma_chan > *chan) > > if (tdmac->irq) > devm_free_irq(tdmac->dev, tdmac->irq, tdmac); > + > + tasklet_kill(&tdmac->tasklet); > + > mmp_tdma_free_descriptor(tdmac); > return; > } > -- > 1.7.0.4 > -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/