summaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
authorXuelin Shi <xuelin.shi@nxp.com>2016-03-08 14:02:01 +0800
committerVinod Koul <vinod.koul@intel.com>2016-03-09 12:15:22 +0530
commita9af316c83e3d81e26985193ffafdf143b327c07 (patch)
treee6b3a2056a60bca3e313adade6b562a55186b06a /drivers/dma
parentf6cede5b49e822ebc41a099fe41ab4989f64e2cb (diff)
downloadlinux-a9af316c83e3d81e26985193ffafdf143b327c07.tar.gz
linux-a9af316c83e3d81e26985193ffafdf143b327c07.tar.bz2
linux-a9af316c83e3d81e26985193ffafdf143b327c07.zip
dmaengine: fsldma: fix memory leak
adding unmap of sources and destinations while doing dequeue. Signed-off-by: Xuelin Shi <xuelin.shi@nxp.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/fsldma.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/dma/fsldma.c b/drivers/dma/fsldma.c
index 2209f75fdf05..aac85c30c2cf 100644
--- a/drivers/dma/fsldma.c
+++ b/drivers/dma/fsldma.c
@@ -522,6 +522,8 @@ static dma_cookie_t fsldma_run_tx_complete_actions(struct fsldma_chan *chan,
chan_dbg(chan, "LD %p callback\n", desc);
txd->callback(txd->callback_param);
}
+
+ dma_descriptor_unmap(txd);
}
/* Run any dependencies */