[PATCH bpf-next 2/2] selftests/bpf: Add test to access const void pointer argument in tracing program
From: KaFai Wan
Date: Sat Apr 12 2025 - 13:07:21 EST
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@xxxxxxxxxxx>
---
.../selftests/bpf/progs/verifier_btf_ctx_access.c | 9 +++++++++
1 file changed, 9 insertions(+)
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";
--
2.43.0