Re: [PATCH] emulex/benet: Annotate flash_cookie as nonstring

Simon Horman
2025-04-21T14:51:14Z

On Wed, Apr 16, 2025 at 03:10:29PM -0700, Kees Cook wrote:
> GCC 15's new -Wunterminated-string-initialization notices that the 32
> character "flash_cookie" (which is not used as a C-String)
> needs to be marked as "nonstring":
>
> drivers/net/ethernet/emulex/benet/be_cmds.c:2618:51: warning: initializer-string for array of 'char' truncates NUL terminator but destination lacks 'nonstring' attribute (17 chars into 16 available) [-Wunterminated-string-initialization]
> 2618 | static char flash_cookie[2][16] = {"*** SE FLAS", "H DIRECTORY *** "};
> | ^~~~~~~~~~~~~~~~~~
>
> Add this annotation, avoid using a multidimensional array, but keep the
> string split (with a comment about why). Additionally mark it const
> and annotate the "cookie" member that is being memcmp()ed against as
> nonstring too.
>
> Signed-off-by: Kees Cook <kees@kernel.org>

I am assuming this is for net-next.

Reviewed-by: Simon Horman <horms@kernel.org>