diff options
| author | Amery Hung <ameryhung@gmail.com> | 2026-07-23 15:18:15 -0700 |
|---|---|---|
| committer | Eduard Zingerman <eddyz87@gmail.com> | 2026-07-23 16:09:08 -0700 |
| commit | 55c7bd2ddee50fd37b3b4c0b7a76bb0fd565f38b (patch) | |
| tree | a80308884b5fe7d14b54e19a60e43f219a06359f | |
| parent | 289e680c89ae8a0bb629fa8308313f5c8c6c76a3 (diff) | |
| download | linux-55c7bd2ddee50fd37b3b4c0b7a76bb0fd565f38b.tar.gz linux-55c7bd2ddee50fd37b3b4c0b7a76bb0fd565f38b.tar.bz2 linux-55c7bd2ddee50fd37b3b4c0b7a76bb0fd565f38b.zip | |
selftests/bpf: Test passing scalar NULL to nonnull global subprog
Make sure the verifier reject passing a hardcoded NULL to an
__arg_nonnull argument.
Signed-off-by: Amery Hung <ameryhung@gmail.com>
Link: https://patch.msgid.link/20260723221815.367797-2-ameryhung@gmail.com
Signed-off-by: Eduard Zingerman <eddyz87@gmail.com>
| -rw-r--r-- | tools/testing/selftests/bpf/progs/verifier_global_subprogs.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tools/testing/selftests/bpf/progs/verifier_global_subprogs.c b/tools/testing/selftests/bpf/progs/verifier_global_subprogs.c index 75a2e3f48d0f..67dc352addfd 100644 --- a/tools/testing/selftests/bpf/progs/verifier_global_subprogs.c +++ b/tools/testing/selftests/bpf/progs/verifier_global_subprogs.c @@ -185,6 +185,16 @@ int arg_tag_nonnull_ptr_good(void *ctx) return subprog_nonnull_ptr_good(&x, &y); } +SEC("?raw_tp") +__failure __log_level(2) +__msg("R1 is expected to be non-NULL") +int arg_tag_nonnull_ptr_null_bad(void *ctx) +{ + int y = 74; + + return subprog_nonnull_ptr_good(NULL, &y); +} + /* this global subprog can be now called from many types of entry progs, each * with different context type */ |