From: Dan Williams Date: Sat, 1 Mar 2008 14:51:17 +0000 (-0700) Subject: fsldma: do not cleanup descriptors in hardirq context X-Git-Tag: v2.6.25-rc4~94^2~2 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=222ccf9ab838a1ca7163969fabd2cddc10403fb5;p=linux-2.6-omap-h63xx.git fsldma: do not cleanup descriptors in hardirq context "Cleaning" descriptors involves calling pending callbacks and clients assume that their callback will only ever happen in softirq context. Delay cleanup to the tasklet. Signed-off-by: Dan Williams Acked-by: Zhang Wei --- diff --git a/drivers/dma/fsldma.c b/drivers/dma/fsldma.c index 902e852571a..cc9a68158d9 100644 --- a/drivers/dma/fsldma.c +++ b/drivers/dma/fsldma.c @@ -685,7 +685,6 @@ static irqreturn_t fsl_dma_chan_do_interrupt(int irq, void *data) "nlndar 0x%016llx\n", (u64)get_cdar(fsl_chan), (u64)get_ndar(fsl_chan)); stat &= ~FSL_DMA_SR_EOSI; - fsl_chan_ld_cleanup(fsl_chan); } /* If it current transfer is the end-of-transfer,