]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
selftests: bpf: fix test_kfunc_dynptr_param
authorPuranjay Mohan <puranjay@kernel.org>
Fri, 2 Jan 2026 18:00:34 +0000 (10:00 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 2 Jan 2026 20:04:29 +0000 (12:04 -0800)
As verifier now assumes that all kfuncs only takes trusted pointer
arguments, passing 0 (NULL) to a kfunc that doesn't mark the argument as
__nullable or __opt will be rejected with a failure message of: Possibly
NULL pointer passed to trusted arg<n>

Pass a non-null value to the kfunc to test the expected failure mode.

Acked-by: Eduard Zingerman <eddyz87@gmail.com>
Reviewed-by: Emil Tsalapatis <emil@etsalapatis.com>
Signed-off-by: Puranjay Mohan <puranjay@kernel.org>
Link: https://lore.kernel.org/r/20260102180038.2708325-9-puranjay@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/progs/test_kfunc_dynptr_param.c

index 061befb004c24c6de6f1cb5dcfc73c5f94599fcd..d249113ed6579ace08b28f61655a9063d253be2f 100644 (file)
@@ -48,10 +48,9 @@ SEC("?lsm.s/bpf")
 __failure __msg("arg#0 expected pointer to stack or const struct bpf_dynptr")
 int BPF_PROG(not_ptr_to_stack, int cmd, union bpf_attr *attr, unsigned int size, bool kernel)
 {
-       unsigned long val = 0;
+       static struct bpf_dynptr val;
 
-       return bpf_verify_pkcs7_signature((struct bpf_dynptr *)val,
-                                         (struct bpf_dynptr *)val, NULL);
+       return bpf_verify_pkcs7_signature(&val, &val, NULL);
 }
 
 SEC("lsm.s/bpf")