Re: [PATCH 2/3][next] scsi: smartpqi: Replace one-element arrays with flexible-array members

From: Kees Cook
Date: Thu Feb 02 2023 - 15:28:36 EST


On Wed, Sep 21, 2022 at 11:29:29PM -0500, Gustavo A. R. Silva wrote:
> One-element arrays are deprecated, and we are replacing them with flexible
> array members instead. So, replace one-element array with flexible-array
> member in structures report_phys_lun_8byte_wwid_list and
> report_phys_lun_16byte_wwid_list.
>
> This helps with the ongoing efforts to tighten the FORTIFY_SOURCE routines
> on memcpy().
>
> Link: https://github.com/KSPP/linux/issues/79
> Link: https://github.com/KSPP/linux/issues/204
> Signed-off-by: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx>

Are there any binary differences after this patch? I assume not, so:

Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>


> ---
> drivers/scsi/smartpqi/smartpqi.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi.h b/drivers/scsi/smartpqi/smartpqi.h
> index d1756c9d1112..b31b42530674 100644
> --- a/drivers/scsi/smartpqi/smartpqi.h
> +++ b/drivers/scsi/smartpqi/smartpqi.h
> @@ -982,12 +982,12 @@ struct report_phys_lun_16byte_wwid {
>
> struct report_phys_lun_8byte_wwid_list {
> struct report_lun_header header;
> - struct report_phys_lun_8byte_wwid lun_entries[1];
> + struct report_phys_lun_8byte_wwid lun_entries[];
> };
>
> struct report_phys_lun_16byte_wwid_list {
> struct report_lun_header header;
> - struct report_phys_lun_16byte_wwid lun_entries[1];
> + struct report_phys_lun_16byte_wwid lun_entries[];
> };
>
> struct raid_map_disk_data {
> --
> 2.34.1
>

--
Kees Cook