diff options
author | Yu Kuai | 2020-06-18 21:01:10 +0800 |
---|---|---|
committer | Vinod Koul | 2020-06-24 11:36:10 +0530 |
commit | 1438cde8fe9cb709b569f5829c4c892c0f3f15b3 (patch) | |
tree | fdbfbc3cbad894865b050f24349647464263ec69 /drivers/dma/ti | |
parent | 466257d9968ac79575831250b039dc07566c7b13 (diff) |
dmaengine: ti: k3-udma: add missing put_device() call in of_xudma_dev_get()
if of_find_device_by_node() succeed and platform_get_drvdata() failed,
of_xudma_dev_get() will return without put_device(), which will leak
the memory.
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
Link: https://lore.kernel.org/r/20200618130110.582543-1-yukuai3@huawei.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/dma/ti')
-rw-r--r-- | drivers/dma/ti/k3-udma-private.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/dma/ti/k3-udma-private.c b/drivers/dma/ti/k3-udma-private.c index 0b8f3dd6b146..77e8e67d995b 100644 --- a/drivers/dma/ti/k3-udma-private.c +++ b/drivers/dma/ti/k3-udma-private.c @@ -42,6 +42,7 @@ struct udma_dev *of_xudma_dev_get(struct device_node *np, const char *property) ud = platform_get_drvdata(pdev); if (!ud) { pr_debug("UDMA has not been probed\n"); + put_device(&pdev->dev); return ERR_PTR(-EPROBE_DEFER); } |