Message ID | 20250412170626.3638516-3-kafai.wan@hotmail.com |
---|---|
State | New |
Headers | show |
Series | bpf: Allow access to const void pointer arguments in tracing programs | expand |
diff --git a/tools/testing/selftests/bpf/progs/verifier_btf_ctx_access.c b/tools/testing/selftests/bpf/progs/verifier_btf_ctx_access.c index 28b939572cda..a6cec7f73dcd 100644 --- a/tools/testing/selftests/bpf/progs/verifier_btf_ctx_access.c +++ b/tools/testing/selftests/bpf/progs/verifier_btf_ctx_access.c @@ -65,4 +65,13 @@ __naked void ctx_access_u32_pointer_reject_8(void) " ::: __clobber_all); } +SEC("tp_btf/kfree") +__description("btf_ctx_access const void pointer accept") +int ctx_access_const_void_pointer_accept(void) +{ + /* load 2nd argument value (const void pointer) */ + asm volatile ("r2 = *(u64 *)(r1 + 8); "); + return 0; +} + char _license[] SEC("license") = "GPL";
Adding verifier test for accessing const void pointer argument in tracing programs. The test program loads 2nd argument of kfree tp_btf which is const void pointer and checks that verifier allows that. Signed-off-by: KaFai Wan <kafai.wan@hotmail.com> --- .../selftests/bpf/progs/verifier_btf_ctx_access.c | 9 +++++++++ 1 file changed, 9 insertions(+)