On Fri, Sep 22, 2023 at 7:51 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote: > > Prepare for the coming implementation by GCC and Clang of the __counted_by > attribute. Flexible array members annotated with __counted_by can have > their accesses bounds-checked at run-time checking via CONFIG_UBSAN_BOUNDS > (for array indexing) and CONFIG_FORTIFY_SOURCE (for strcpy/memcpy-family > functions). > > As found with Coccinelle[1], add __counted_by for struct at24_data. > > [1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci > > Cc: Bartosz Golaszewski <brgl@xxxxxxxx> > Cc: Arnd Bergmann <arnd@xxxxxxxx> > Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > Cc: linux-i2c@xxxxxxxxxxxxxxx > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > --- > drivers/misc/eeprom/at24.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/misc/eeprom/at24.c b/drivers/misc/eeprom/at24.c > index af83aca452b7..7dfd7fdb423e 100644 > --- a/drivers/misc/eeprom/at24.c > +++ b/drivers/misc/eeprom/at24.c > @@ -92,7 +92,7 @@ struct at24_data { > * them for us. > */ > u8 bank_addr_shift; > - struct regmap *client_regmaps[]; > + struct regmap *client_regmaps[] __counted_by(num_addresses); > }; > > /* > -- > 2.34.1 > Applied, thanks! Bart