Commit c5528153 authored by Gao Pan's avatar Gao Pan Committed by Wolfram Sang

i2c: imx: fix i2c resource leak with dma transfer

In i2c_imx_dma_xfer(), when dmaengine_submit() returns error,
the context goto label err_submit and then return. However, the
memory allocated for txdesc has not been freed yet, which
leads to resource leak.
Signed-off-by: default avatarGao Pan <b54642@freescale.com>
Signed-off-by: default avatarFugang Duan <B38611@freescale.com>
Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
parent a570a27a
...@@ -387,6 +387,7 @@ static int i2c_imx_dma_xfer(struct imx_i2c_struct *i2c_imx, ...@@ -387,6 +387,7 @@ static int i2c_imx_dma_xfer(struct imx_i2c_struct *i2c_imx,
return 0; return 0;
err_submit: err_submit:
dmaengine_terminate_all(dma->chan_using);
err_desc: err_desc:
dma_unmap_single(chan_dev, dma->dma_buf, dma_unmap_single(chan_dev, dma->dma_buf,
dma->dma_len, dma->dma_data_dir); dma->dma_len, dma->dma_data_dir);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment