Re: [PATCH][next] platform/chrome: Fix -Warray-bounds warnings

Greg KH
2023-03-30T07:11:30Z

On Thu, Mar 30, 2023 at 03:01:23PM +0800, Tzung-Bi Shih wrote:
> On Wed, Mar 29, 2023 at 07:54:02PM -0600, Gustavo A. R. Silva wrote:
> > In this case, as only enough space for the op field is allocated,
> > we can use an object of type uint32_t instead of a whole
> > struct ec_params_vbnvcontext (for which not enough memory is
> > allocated).
>
> It doesn't make sense to me. See comments below.
>
> > Fix the following warning seen under GCC 13:
> > drivers/platform/chrome/cros_ec_vbc.c: In function ‘vboot_context_read’:
> > drivers/platform/chrome/cros_ec_vbc.c:36:15: warning: array subscript ‘struct ec_params_vbnvcontext[1]’ is partly outside array bounds of ‘unsigned char[36]’ [-Warray-bounds=]
> > 36 | params->op = EC_VBNV_CONTEXT_OP_READ;
> > | ^~
> > In file included from drivers/platform/chrome/cros_ec_vbc.c:12:
> > In function ‘kmalloc’,
> > inlined from ‘vboot_context_read’ at drivers/platform/chrome/cros_ec_vbc.c:30:8:
> > ./include/linux/slab.h:580:24: note: at offset 20 into object of size 36 allocated by ‘kmalloc_trace’
> > 580 | return kmalloc_trace(
> > | ^~~~~~~~~~~~~~
> > 581 | kmalloc_caches[kmalloc_type(flags)][index],
> > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > 582 | flags, size);
> > | ~~~~~~~~~~~~
>
> Please trim the commit message a bit and try to wrap at 75 columns as
> [1] suggested.
>
> [1]: https://www.kernel.org/doc/html/latest/process/submitting-patches.html#the-canonical-patch-format

For outputs from tools like this, going over 75 columns is fine, no need
to ever line-wrap stuff like this, that would just make it unreadable.

thanks,

greg k-h