[PATCH] media: vidtv: Add the missing kfree to avoid the memory leak

From: Jiasheng Jiang
Date: Tue Jan 11 2022 - 21:06:18 EST


Since kstrdup() allocate a space for e->name and will not automatically
free.
If kzalloc() fails, we just kfree e without e->name.
Then we cannot get the pointer 'e->name' and cause the memory leak.

Fixes: 3d1387b3b8f6 ("media: vidtv: fix some warnings")
Reported-by: Hans Verkuil <hverkuil@xxxxxxxxx>
Signed-off-by: Jiasheng Jiang <jiasheng@xxxxxxxxxxx>
---
drivers/media/test-drivers/vidtv/vidtv_s302m.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/media/test-drivers/vidtv/vidtv_s302m.c b/drivers/media/test-drivers/vidtv/vidtv_s302m.c
index ddaff46c440f..433fc0c7fdfa 100644
--- a/drivers/media/test-drivers/vidtv/vidtv_s302m.c
+++ b/drivers/media/test-drivers/vidtv/vidtv_s302m.c
@@ -474,6 +474,7 @@ struct vidtv_encoder

ctx = kzalloc(priv_sz, GFP_KERNEL);
if (!ctx) {
+ kfree(e->name);
kfree(e);
return NULL;
}
--
2.25.1