net/packet: Annotate struct packet_fanout with __counted_by
Subsystems (2)
PATCH 1/1 net/packet: Annotate struct packet_fanout 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 packet_fanout.
--- net/packet/internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
net/packet/internal.h +1 -1
@@ -94,7 +94,7 @@ struct packet_fanout {spinlock_t lock;refcount_t sk_ref;struct packet_type prot_hook____cacheline_aligned_in_smp ; -struct sock __rcu *arr[]; + struct sock __rcu *arr[] __counted_by(max_num_members); };struct packet_rollover {
Signature · 1 line
2.34.1
Quoted 8 lines · Kees Cook
Prepare for the coming implementation by GCC and Clang of the
__counted_byattribute. Flexible array members annotated with__counted_bycan have their accesses bounds-checked at run-time viaCONFIG_UBSAN_BOUNDS(for array indexing) andCONFIG_FORTIFY_SOURCE(for strcpy/memcpy-family functions).As found with Coccinelle[1], add
__counted_byfor structpacket_fanout.
Quoted 9 lines
Cc "David S. Miller" <[email protected]>Cc Eric Dumazet <[email protected]>Cc Jakub Kicinski <[email protected]>Cc Paolo Abeni <[email protected]>Cc Willem de Bruijn <[email protected]>Cc Anqi Shen <[email protected]>Signed-off-by Kees Cook <[email protected]>
Thanks
--
Gustavo
Quoted 17 lines
--- net/packet/internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)net/packet/internal.h +1
-1@@ -94,7 +94,7 @@ struct packet_fanout {spinlock_t lock;refcount_t sk_ref;struct packet_type prot_hook____cacheline_aligned_in_smp ; -struct sock __rcu *arr[]; + struct sock __rcu *arr[] __counted_by(max_num_members); };struct packet_rollover {
This patch was applied to netdev/net-next.git (main) by David S. Miller <[email protected]>:
Hello:
This patch was applied to netdev/net-next.git (main) by David S. Miller <[email protected]>:
Quoted 9 lines · On Tue, 3 Oct 2023 16:17:41 -0700 you wrote:
Prepare for the coming implementation by GCC and Clang of the
__counted_byattribute. Flexible array members annotated with__counted_bycan have their accesses bounds-checked at run-time viaCONFIG_UBSAN_BOUNDS(for array indexing) andCONFIG_FORTIFY_SOURCE(for strcpy/memcpy-family functions).As found with Coccinelle[1], add
__counted_byfor structpacket_fanout.[...]
Here is the summary with links:
- net/packet: Annotate struct packet_fanout with __counted_by
https://git.kernel.org/netdev/net-next/c/b3783e5efde4
You are awesome, thank you!
Signature · 2 lines
Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html