Reviewed-by: Lyude Paul <lyude@xxxxxxxxxx> Thanks! On Fri, 2023-09-22 at 10:32 -0700, Kees Cook 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 nvkm_perfdom. > > [1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci > > Cc: Ben Skeggs <bskeggs@xxxxxxxxxx> > Cc: Karol Herbst <kherbst@xxxxxxxxxx> > Cc: Lyude Paul <lyude@xxxxxxxxxx> > Cc: David Airlie <airlied@xxxxxxxxx> > Cc: Daniel Vetter <daniel@xxxxxxxx> > Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx > Cc: nouveau@xxxxxxxxxxxxxxxxxxxxx > Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> > --- > drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h b/drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h > index 6ae25d3e7f45..c011227f7052 100644 > --- a/drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h > +++ b/drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h > @@ -82,7 +82,7 @@ struct nvkm_perfdom { > u8 mode; > u32 clk; > u16 signal_nr; > - struct nvkm_perfsig signal[]; > + struct nvkm_perfsig signal[] __counted_by(signal_nr); > }; > > struct nvkm_funcdom { -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat