Re: [PATCH v3 03/18] media: dvb-frontend/mxl5xx: Refactor struct MBIN_FILE_T
From: Hans Verkuil
Date: Thu May 30 2024 - 08:33:37 EST
On 27/05/2024 23:08, Ricardo Ribalda wrote:
> Replace a single element array, with a single element field.
>
> The following cocci warning is fixed:
> drivers/media/dvb-frontends/mxl5xx_defs.h:171:4-8: 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@xxxxxxxxxxxx>
> ---
> drivers/media/dvb-frontends/mxl5xx.c | 2 +-
> drivers/media/dvb-frontends/mxl5xx_defs.h | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/dvb-frontends/mxl5xx.c b/drivers/media/dvb-frontends/mxl5xx.c
> index 91e9c378397c..a15c0438b07a 100644
> --- a/drivers/media/dvb-frontends/mxl5xx.c
> +++ b/drivers/media/dvb-frontends/mxl5xx.c
> @@ -893,7 +893,7 @@ static int do_firmware_download(struct mxl *state, u8 *mbin_buffer_ptr,
> status = write_register(state, FW_DL_SIGN_ADDR, 0);
> if (status)
> return status;
> - segment_ptr = (struct MBIN_SEGMENT_T *) (&mbin_ptr->data[0]);
> + segment_ptr = (struct MBIN_SEGMENT_T *)(&mbin_ptr->data);
> for (index = 0; index < mbin_ptr->header.num_segments; index++) {
> if (segment_ptr->header.id != MBIN_SEGMENT_HEADER_ID) {
> dev_err(state->i2cdev, "%s: Invalid segment header ID (%c)\n",
> diff --git a/drivers/media/dvb-frontends/mxl5xx_defs.h b/drivers/media/dvb-frontends/mxl5xx_defs.h
> index 097271f73740..3c5d75ed8fea 100644
> --- a/drivers/media/dvb-frontends/mxl5xx_defs.h
> +++ b/drivers/media/dvb-frontends/mxl5xx_defs.h
> @@ -168,7 +168,7 @@ struct MBIN_FILE_HEADER_T {
>
> struct MBIN_FILE_T {
> struct MBIN_FILE_HEADER_T header;
> - u8 data[1];
> + u8 data;
>From what I can tell, shouldn't this be 'data[]'? It really appears to be a flexible array.
Regards,
Hans
> };
>
> struct MBIN_SEGMENT_HEADER_T {
>