bpf: Annotate struct bpf_stack_map with __counted_by
authorKees Cook <keescook@chromium.org>
Fri, 6 Oct 2023 20:17:00 +0000 (13:17 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Fri, 6 Oct 2023 21:44:35 +0000 (23:44 +0200)
commit84cb9cbd911a3e06c1ff31572706ba0ee3499b19
tree255d332cb959f539b9dfd09e154479474f179d66
parentfdd11c14c33b949a4d59fab159fb2da834073914
bpf: Annotate struct bpf_stack_map with __counted_by

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 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 bpf_stack_map.

Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Stanislav Fomichev <sdf@google.com>
Link: https://github.com/kees/kernel-tools/blob/trunk/coccinelle/examples/counted_by.cocci
Link: https://lore.kernel.org/bpf/20231006201657.work.531-kees@kernel.org
kernel/bpf/stackmap.c