| From f7049d42ab25243c5361252194ae1cb6ed1308a6 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 26 May 2021 17:18:32 +0200 |
| Subject: media: s5p-g2d: Fix a memory leak on ctx->fh.m2m_ctx |
| |
| From: Dillon Min <dillon.minfei@gmail.com> |
| |
| [ Upstream commit 5d11e6aad1811ea293ee2996cec9124f7fccb661 ] |
| |
| The m2m_ctx resources was allocated by v4l2_m2m_ctx_init() in g2d_open() |
| should be freed from g2d_release() when it's not used. |
| |
| Fix it |
| |
| Fixes: 918847341af0 ("[media] v4l: add G2D driver for s5p device family") |
| Signed-off-by: Dillon Min <dillon.minfei@gmail.com> |
| Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> |
| Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/media/platform/s5p-g2d/g2d.c | 3 +++ |
| 1 file changed, 3 insertions(+) |
| |
| diff --git a/drivers/media/platform/s5p-g2d/g2d.c b/drivers/media/platform/s5p-g2d/g2d.c |
| index 15bcb7f6e113..1cb5eaabf340 100644 |
| --- a/drivers/media/platform/s5p-g2d/g2d.c |
| +++ b/drivers/media/platform/s5p-g2d/g2d.c |
| @@ -276,6 +276,9 @@ static int g2d_release(struct file *file) |
| struct g2d_dev *dev = video_drvdata(file); |
| struct g2d_ctx *ctx = fh2ctx(file->private_data); |
| |
| + mutex_lock(&dev->mutex); |
| + v4l2_m2m_ctx_release(ctx->fh.m2m_ctx); |
| + mutex_unlock(&dev->mutex); |
| v4l2_ctrl_handler_free(&ctx->ctrl_handler); |
| v4l2_fh_del(&ctx->fh); |
| v4l2_fh_exit(&ctx->fh); |
| -- |
| 2.30.2 |
| |