2016-11-25 04:47:02

by Shailendra Verma

[permalink] [raw]
Subject: [PATCH] Media: Platform: Omap3isp: Do not forget to call

v4l2_fh_init is already done.So call the v4l2_fh_exit in error condition
before returing from the function.

Signed-off-by: Shailendra Verma <[email protected]>
---
drivers/media/platform/omap3isp/ispvideo.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c
index 7354469..2822e2f 100644
--- a/drivers/media/platform/omap3isp/ispvideo.c
+++ b/drivers/media/platform/omap3isp/ispvideo.c
@@ -1350,6 +1350,7 @@ static int isp_video_open(struct file *file)
done:
if (ret < 0) {
v4l2_fh_del(&handle->vfh);
+ v4l2_fh_exit(&handle->vfh);
kfree(handle);
}

--
1.7.9.5


2016-11-25 14:37:51

by Laurent Pinchart

[permalink] [raw]
Subject: Re: [PATCH] Media: Platform: Omap3isp: Do not forget to call

Hi Shailendra,

Thank you for the patch.

On Friday 25 Nov 2016 10:14:32 Shailendra Verma wrote:
> v4l2_fh_init is already done.So call the v4l2_fh_exit in error condition
> before returing from the function.
>
> Signed-off-by: Shailendra Verma <[email protected]>
> ---
> drivers/media/platform/omap3isp/ispvideo.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/media/platform/omap3isp/ispvideo.c
> b/drivers/media/platform/omap3isp/ispvideo.c index 7354469..2822e2f 100644
> --- a/drivers/media/platform/omap3isp/ispvideo.c
> +++ b/drivers/media/platform/omap3isp/ispvideo.c
> @@ -1350,6 +1350,7 @@ static int isp_video_open(struct file *file)
> done:
> if (ret < 0) {
> v4l2_fh_del(&handle->vfh);
> + v4l2_fh_exit(&handle->vfh);

While at it you should call v4l2_fh_exit() in the isp_video_release() function
as well. I propose updating the commit message to

v4l: omap3isp: Clean up file handle in open() and release()

Both functions initialize the file handle with v4l2_fh_init() and thus
need to call clean up with v4l2_fh_exit() as appropriate. Fix it.

Same comment for the OMAP4 ISS patches you've submitted.

> kfree(handle);
> }

--
Regards,

Laurent Pinchart