2024-05-27 21:09:17

by Ricardo Ribalda

[permalink] [raw]
Subject: [PATCH v3 01/18] media: allegro: nal-hevc: Replace array[1] with arrray[N]

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 <[email protected]>
---
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



2024-05-28 13:54:39

by Michael Tretter

[permalink] [raw]
Subject: Re: [PATCH v3 01/18] media: allegro: nal-hevc: Replace array[1] with arrray[N]

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 <[email protected]>

With that fixed

Reviewed-by: Michael Tretter <[email protected]>

> ---
> 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
>
>