35 lines
1.2 KiB
Diff
35 lines
1.2 KiB
Diff
From 0960432c8261efb05bcf5ba6d8fe13c8293086a9 Mon Sep 17 00:00:00 2001
|
|
From: Colin Ian King <colin.king@canonical.com>
|
|
Date: Mon, 16 Dec 2019 16:10:59 +0000
|
|
Subject: [PATCH] dma-buf: fix resource leak on -ENOTTY error return
|
|
path
|
|
|
|
Commit f9d3b2c600075d1f79efcd5cdb1718c2f554c0f9 upstream.
|
|
|
|
The -ENOTTY error return path does not free the allocated
|
|
kdata as it returns directly. Fix this by returning via the
|
|
error handling label err.
|
|
|
|
Addresses-Coverity: ("Resource leak")
|
|
Fixes: c02a81fba74f ("dma-buf: Add dma-buf heaps framework")
|
|
Signed-off-by: Colin Ian King <colin.king@canonical.com>
|
|
Acked-by: John Stultz <john.stultz@linaro.org>
|
|
Signed-off-by: Sumit Semwal <sumit.semwal@linaro.org>
|
|
Link: https://patchwork.freedesktop.org/patch/msgid/20191216161059.269492-1-colin.king@canonical.com
|
|
---
|
|
drivers/dma-buf/dma-heap.c | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/dma-buf/dma-heap.c
|
|
+++ b/drivers/dma-buf/dma-heap.c
|
|
@@ -157,7 +157,8 @@ static long dma_heap_ioctl(struct file *
|
|
ret = dma_heap_ioctl_allocate(file, kdata);
|
|
break;
|
|
default:
|
|
- return -ENOTTY;
|
|
+ ret = -ENOTTY;
|
|
+ goto err;
|
|
}
|
|
|
|
if (copy_to_user((void __user *)arg, kdata, out_size) != 0)
|