lkml.org 
[lkml]   [2023]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH 9/9] drm/v3d: Annotate struct v3d_perfmon with __counted_by
    From
    Hi Kees,

    On 9/22/23 14:32, 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 v3d_perfmon.
    >
    > [1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
    >
    > Cc: Emma Anholt <emma@anholt.net>
    > Cc: Melissa Wen <mwen@igalia.com>
    > Cc: David Airlie <airlied@gmail.com>
    > Cc: Daniel Vetter <daniel@ffwll.ch>
    > Cc: dri-devel@lists.freedesktop.org
    > Signed-off-by: Kees Cook <keescook@chromium.org>

    Reviewed-by: Maíra Canal <mcanal@igalia.com>

    Best Regards,
    - Maíra

    > ---
    > drivers/gpu/drm/v3d/v3d_drv.h | 2 +-
    > 1 file changed, 1 insertion(+), 1 deletion(-)
    >
    > diff --git a/drivers/gpu/drm/v3d/v3d_drv.h b/drivers/gpu/drm/v3d/v3d_drv.h
    > index 7f664a4b2a75..106454f28956 100644
    > --- a/drivers/gpu/drm/v3d/v3d_drv.h
    > +++ b/drivers/gpu/drm/v3d/v3d_drv.h
    > @@ -59,7 +59,7 @@ struct v3d_perfmon {
    > * values can't be reset, but you can fake a reset by
    > * destroying the perfmon and creating a new one.
    > */
    > - u64 values[];
    > + u64 values[] __counted_by(ncounters);
    > };
    >
    > struct v3d_dev {

    \
     
     \ /
      Last update: 2023-09-28 17:20    [W:3.932 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site