diff mbox series

[3/9] media: mtk-vcodec: Do not zero reserved fields

Message ID 20210111145445.28854-4-ribalda@chromium.org
State Superseded
Headers show
Series [1/9] media: ipu3-cio2: Do not zero reserved fields | expand

Commit Message

Ricardo Ribalda Jan. 11, 2021, 2:54 p.m. UTC
Core code already clears reserved fields of struct
v4l2_pix_format_mplane, check: 4e1e0eb0e074 ("media: v4l2-ioctl: Zero
v4l2_plane_pix_format reserved fields").

Cc: Matthias Brugger <matthias.bgg@gmail.com>
Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
 drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c | 5 -----
 drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c | 8 --------
 2 files changed, 13 deletions(-)

Comments

Kieran Bingham Jan. 12, 2021, 12:09 p.m. UTC | #1
Hi Ricardo,

On 11/01/2021 14:54, Ricardo Ribalda wrote:
> Core code already clears reserved fields of struct

> v4l2_pix_format_mplane, check: 4e1e0eb0e074 ("media: v4l2-ioctl: Zero

> v4l2_plane_pix_format reserved fields").

> 

> Cc: Matthias Brugger <matthias.bgg@gmail.com>

> Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>


There's also another memset.*reserved occurring in
  platform/mtk-vcodec/mtk_vcodec_enc.c: vidioc_enum_fmt()

While v4l2-core/v4l2-ioctl.c has:
> static int v4l_enum_fmt(const struct v4l2_ioctl_ops *ops,

>                                 struct file *file, void *fh, void *arg)

> {

>         struct video_device *vdev = video_devdata(file);

>         struct v4l2_fmtdesc *p = arg;

>         int ret = check_fmt(file, p->type);

>         u32 mbus_code;

>         u32 cap_mask;

> 

>         if (ret)

>                 return ret;

>         ret = -EINVAL;

> 

>         if (!(vdev->device_caps & V4L2_CAP_IO_MC))

>                 p->mbus_code = 0;

> 

>         mbus_code = p->mbus_code;

>         CLEAR_AFTER_FIELD(p, type);


So would that mean ^^^ should also be sufficient to remove the need for
that memset?

With that fixed or resolved:

Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>




> ---

>  drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c | 5 -----

>  drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c | 8 --------

>  2 files changed, 13 deletions(-)

> 

> diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c

> index c768a587a944..d746c41ea805 100644

> --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c

> +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c

> @@ -715,12 +715,7 @@ static int vidioc_try_fmt(struct v4l2_format *f,

>  		}

>  	}

>  

> -	for (i = 0; i < pix_fmt_mp->num_planes; i++)

> -		memset(&(pix_fmt_mp->plane_fmt[i].reserved[0]), 0x0,

> -			   sizeof(pix_fmt_mp->plane_fmt[0].reserved));

> -

>  	pix_fmt_mp->flags = 0;

> -	memset(&pix_fmt_mp->reserved, 0x0, sizeof(pix_fmt_mp->reserved));

>  	return 0;

>  }

>  

> diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c

> index 21de1431cfcb..db1f62cc38b3 100644

> --- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c

> +++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c

> @@ -320,13 +320,7 @@ static int vidioc_try_fmt(struct v4l2_format *f,

>  		}

>  	}

>  

> -	for (i = 0; i < pix_fmt_mp->num_planes; i++)

> -		memset(&(pix_fmt_mp->plane_fmt[i].reserved[0]), 0x0,

> -			   sizeof(pix_fmt_mp->plane_fmt[0].reserved));

> -

>  	pix_fmt_mp->flags = 0;

> -	memset(&pix_fmt_mp->reserved, 0x0,

> -		sizeof(pix_fmt_mp->reserved));

>  

>  	return 0;

>  }

> @@ -532,8 +526,6 @@ static int vidioc_venc_g_fmt(struct file *file, void *priv,

>  	for (i = 0; i < pix->num_planes; i++) {

>  		pix->plane_fmt[i].bytesperline = q_data->bytesperline[i];

>  		pix->plane_fmt[i].sizeimage = q_data->sizeimage[i];

> -		memset(&(pix->plane_fmt[i].reserved[0]), 0x0,

> -		       sizeof(pix->plane_fmt[i].reserved));

>  	}

>  

>  	pix->flags = 0;

>
diff mbox series

Patch

diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c
index c768a587a944..d746c41ea805 100644
--- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c
+++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_dec.c
@@ -715,12 +715,7 @@  static int vidioc_try_fmt(struct v4l2_format *f,
 		}
 	}
 
-	for (i = 0; i < pix_fmt_mp->num_planes; i++)
-		memset(&(pix_fmt_mp->plane_fmt[i].reserved[0]), 0x0,
-			   sizeof(pix_fmt_mp->plane_fmt[0].reserved));
-
 	pix_fmt_mp->flags = 0;
-	memset(&pix_fmt_mp->reserved, 0x0, sizeof(pix_fmt_mp->reserved));
 	return 0;
 }
 
diff --git a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
index 21de1431cfcb..db1f62cc38b3 100644
--- a/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
+++ b/drivers/media/platform/mtk-vcodec/mtk_vcodec_enc.c
@@ -320,13 +320,7 @@  static int vidioc_try_fmt(struct v4l2_format *f,
 		}
 	}
 
-	for (i = 0; i < pix_fmt_mp->num_planes; i++)
-		memset(&(pix_fmt_mp->plane_fmt[i].reserved[0]), 0x0,
-			   sizeof(pix_fmt_mp->plane_fmt[0].reserved));
-
 	pix_fmt_mp->flags = 0;
-	memset(&pix_fmt_mp->reserved, 0x0,
-		sizeof(pix_fmt_mp->reserved));
 
 	return 0;
 }
@@ -532,8 +526,6 @@  static int vidioc_venc_g_fmt(struct file *file, void *priv,
 	for (i = 0; i < pix->num_planes; i++) {
 		pix->plane_fmt[i].bytesperline = q_data->bytesperline[i];
 		pix->plane_fmt[i].sizeimage = q_data->sizeimage[i];
-		memset(&(pix->plane_fmt[i].reserved[0]), 0x0,
-		       sizeof(pix->plane_fmt[i].reserved));
 	}
 
 	pix->flags = 0;