diff mbox series

[v3,01/18] media: allegro: nal-hevc: Replace array[1] with arrray[N]

Message ID 20240527-cocci-flexarray-v3-1-cda09c535816@chromium.org (mailing list archive)
State New
Headers show
Series media: Fix the last set of coccinelle warnings | expand

Commit Message

Ricardo Ribalda May 27, 2024, 9:08 p.m. UTC
Structures that have a single element array as the last field can be
mistaken as a "flex array".

We could replace all the single element arrays in the structure with
single element fields, but this driver prefers to follow the ITU-T H.265
specification, which defines it as an array.

If we introduce a new define N_HRD_PARAMETERS, we make clear our
intentions.

This fixes this cocci warning:
drivers/media/platform/allegro-dvt/nal-hevc.h:102:14-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)

Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>
---
 drivers/media/platform/allegro-dvt/nal-hevc.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

Comments

Michael Tretter May 28, 2024, 1:52 p.m. UTC | #1
Typo in the subject: arrray -> array

On Mon, 27 May 2024 21:08:51 +0000, Ricardo Ribalda wrote:
> Structures that have a single element array as the last field can be
> mistaken as a "flex array".
> 
> We could replace all the single element arrays in the structure with
> single element fields, but this driver prefers to follow the ITU-T H.265
> specification, which defines it as an array.
> 
> If we introduce a new define N_HRD_PARAMETERS, we make clear our
> intentions.

N_HRD_PARAMETERS -> N_HRD_PARAMS

> 
> This fixes this cocci warning:
> drivers/media/platform/allegro-dvt/nal-hevc.h:102:14-22: WARNING use flexible-array member instead (https://www.kernel.org/doc/html/latest/process/deprecated.html#zero-length-and-one-element-arrays)
> 
> Signed-off-by: Ricardo Ribalda <ribalda@chromium.org>

With that fixed

Reviewed-by: Michael Tretter <m.tretter@pengutronix.de>

> ---
>  drivers/media/platform/allegro-dvt/nal-hevc.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/media/platform/allegro-dvt/nal-hevc.h b/drivers/media/platform/allegro-dvt/nal-hevc.h
> index eb46f12aae80..361e2f55c254 100644
> --- a/drivers/media/platform/allegro-dvt/nal-hevc.h
> +++ b/drivers/media/platform/allegro-dvt/nal-hevc.h
> @@ -96,10 +96,11 @@ struct nal_hevc_vps {
>  	unsigned int extension_data_flag;
>  };
>  
> +#define N_HRD_PARAMS 1
>  struct nal_hevc_sub_layer_hrd_parameters {
> -	unsigned int bit_rate_value_minus1[1];
> -	unsigned int cpb_size_value_minus1[1];
> -	unsigned int cbr_flag[1];
> +	unsigned int bit_rate_value_minus1[N_HRD_PARAMS];
> +	unsigned int cpb_size_value_minus1[N_HRD_PARAMS];
> +	unsigned int cbr_flag[N_HRD_PARAMS];
>  };
>  
>  struct nal_hevc_hrd_parameters {
> 
> -- 
> 2.45.1.288.g0e0cd299f1-goog
> 
>
diff mbox series

Patch

diff --git a/drivers/media/platform/allegro-dvt/nal-hevc.h b/drivers/media/platform/allegro-dvt/nal-hevc.h
index eb46f12aae80..361e2f55c254 100644
--- a/drivers/media/platform/allegro-dvt/nal-hevc.h
+++ b/drivers/media/platform/allegro-dvt/nal-hevc.h
@@ -96,10 +96,11 @@  struct nal_hevc_vps {
 	unsigned int extension_data_flag;
 };
 
+#define N_HRD_PARAMS 1
 struct nal_hevc_sub_layer_hrd_parameters {
-	unsigned int bit_rate_value_minus1[1];
-	unsigned int cpb_size_value_minus1[1];
-	unsigned int cbr_flag[1];
+	unsigned int bit_rate_value_minus1[N_HRD_PARAMS];
+	unsigned int cpb_size_value_minus1[N_HRD_PARAMS];
+	unsigned int cbr_flag[N_HRD_PARAMS];
 };
 
 struct nal_hevc_hrd_parameters {