Re: [PATCH 00/10][next] scsi: aacraid: Replace one-element arrays with flexible-array members

From: Kees Cook
Date: Wed Jun 28 2023 - 16:09:14 EST


On Wed, Jun 28, 2023 at 11:53:45AM -0600, Gustavo A. R. Silva wrote:
> This series aims to replace one-element arrays with flexible-array
> members in multiple structures in drivers/scsi/aacraid/aacraid.h.
>
> This helps with the ongoing efforts to globally enable -Warray-bounds
> and get us closer to being able to tighten the FORTIFY_SOURCE routines
> on memcpy().
>
> These issues were found with the help of Coccinelle and audited and fixed,
> manually.
>
> Link: https://github.com/KSPP/linux/issues/79
>
> Gustavo A. R. Silva (10):
> scsi: aacraid: Replace one-element array with flexible-array member
> scsi: aacraid: Use struct_size() helper in aac_get_safw_ciss_luns()
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct aac_aifcmd
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct user_sgmapraw
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct sgmapraw
> scsi: aacraid: Use struct_size() helper in code related to struct
> sgmapraw
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct user_sgmap64
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct sgmap
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct sgmap64
> scsi: aacraid: Replace one-element array with flexible-array member in
> struct user_sgmap

I'd like to reorganize this series so that all the conversions are
first, and then struct_size() additions are at the end. That way, if
desired, the conversions can land as fixes to turn the Clang builds
green again.

--
Kees Cook