]> Gentwo Git Trees - linux/.git/commit
selftests/bpf: Cover verifier checks for skb_meta dynptr type
authorJakub Sitnicki <jakub@cloudflare.com>
Thu, 14 Aug 2025 09:59:29 +0000 (11:59 +0200)
committerMartin KaFai Lau <martin.lau@kernel.org>
Mon, 18 Aug 2025 17:29:42 +0000 (10:29 -0700)
commit0e74eb4d57f00e6103ac23ce2312766c25ad88f6
tree0111af7f9e6a13efc354f93a1d2f5d26cd9edd29
parent6877cd392baecf816c2ba896a9d42874628004a5
selftests/bpf: Cover verifier checks for skb_meta dynptr type

dynptr for skb metadata behaves the same way as the dynptr for skb data
with one exception - writes to skb_meta dynptr don't invalidate existing
skb and skb_meta slices.

Duplicate those the skb dynptr tests which we can, since
bpf_dynptr_from_skb_meta kfunc can be called only from TC BPF, to cover the
skb_meta dynptr verifier checks.

Also add a couple of new tests (skb_data_valid_*) to ensure we don't
invalidate the slices in the mentioned case, which are specific to skb_meta
dynptr.

Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com>
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
Reviewed-by: Jesse Brandeburg <jbrandeburg@cloudflare.com>
Link: https://patch.msgid.link/20250814-skb-metadata-thru-dynptr-v7-3-8a39e636e0fb@cloudflare.com
tools/testing/selftests/bpf/prog_tests/dynptr.c
tools/testing/selftests/bpf/progs/dynptr_fail.c
tools/testing/selftests/bpf/progs/dynptr_success.c