Skip to content

drm: Annotate structs with __counted_by

Kees Cook amd-gfx dri-devel intel-gfx linux-arm-msm linux-hardening lkml llvm nouveau virtualization 1 version Applied

Status from this message: Applied to for-next/hardening, thanks!

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest9 patches 31 repliesApplied

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/9drm/amd/pm: Annotate struct smu10_voltage_dependency_table with __counted_bydrivers/gpu/drm/amd/pm/powerplay/hwmgr/smu10_hwmgr.h+1 -17 replies
2/9drm/amdgpu/discovery: Annotate struct ip_hw_instance with __counted_bydrivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c+1 -12 replies
3/9drm/i915/selftests: Annotate struct perf_series with __counted_bydrivers/gpu/drm/i915/selftests/i915_request.c+1 -14 replies
4/9drm/msm/dpu: Annotate struct dpu_hw_intr with __counted_bydrivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.h+1 -11 reply
5/9drm/nouveau/pm: Annotate struct nvkm_perfdom with __counted_bydrivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h+1 -12 replies
6/9drm/vc4: Annotate struct vc4_perfmon with __counted_bydrivers/gpu/drm/vc4/vc4_drv.h+1 -11 reply
7/9drm/virtio: Annotate struct virtio_gpu_object_array with __counted_bydrivers/gpu/drm/virtio/virtgpu_drv.h+1 -11 reply
8/9drm/vmwgfx: Annotate struct vmw_surface_dirty with __counted_bydrivers/gpu/drm/vmwgfx/vmwgfx_surface.c+1 -12 replies
9/9drm/v3d: Annotate struct v3d_perfmon with __counted_bydrivers/gpu/drm/v3d/v3d_drv.h+1 -11 reply

Reviews trailers per patch

All 9 patches have a Reviewed-by or Acked-by.

PatchAlex DeucherLyude PaulGustavo A. R. SilvaZack RusinAndrzej HajdaAndi ShytiMaíra Canal
1/9A-b R-b
2/9A-b R-b
3/9R-b R-b R-b
4/9R-b
5/9R-b R-b
6/9R-b
7/9R-b
8/9R-b R-b
9/9R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 7 reviewers.

Read the v1 thread

Cover letter [PATCH 0/9] drm: Annotate structs with __counted_by

Hi,

This is a batch of patches touching drm for preparing 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 to structs that would benefit from the annotation.

Since the element count member must be set before accessing the annotated flexible array member, some patches also move the member's initialization earlier. (These are noted in the individual patches.)

-Kees

[1] https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci

Kees Cook (9):
drm/amd/pm: Annotate struct smu10_voltage_dependency_table with
__counted_by
drm/amdgpu/discovery: Annotate struct ip_hw_instance with __counted_by drm/i915/selftests: Annotate struct perf_series with __counted_by drm/msm/dpu: Annotate struct dpu_hw_intr with __counted_by drm/nouveau/pm: Annotate struct nvkm_perfdom with __counted_by drm/vc4: Annotate struct vc4_perfmon with __counted_by drm/virtio: Annotate struct virtio_gpu_object_array with __counted_by drm/vmwgfx: Annotate struct vmw_surface_dirty with __counted_by drm/v3d: Annotate struct v3d_perfmon with __counted_by

 drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c        | 2 +-
 drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu10_hwmgr.h | 2 +-
 drivers/gpu/drm/i915/selftests/i915_request.c        | 2 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_interrupts.h    | 2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h        | 2 +-
 drivers/gpu/drm/v3d/v3d_drv.h                        | 2 +-
 drivers/gpu/drm/vc4/vc4_drv.h                        | 2 +-
 drivers/gpu/drm/virtio/virtgpu_drv.h                 | 2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_surface.c              | 2 +-
 9 files changed, 9 insertions(+), 9 deletions(-)
Signature · 1 line
2.34.1