> selftests/bpf: Add a runtime test for private stack and stack arguments

TL;DR: Test issue only: the new private stack selftest calls test__skip()
without printing a reason, so a SKIP doesn't show why. The review says this
may be acceptable, since other tests do the same.

> diff --git a/tools/testing/selftests/bpf/prog_tests/private_stack_runtime.c 
> b/tools/testing/selftests/bpf/prog_tests/private_stack_runtime.c
> new file mode 100644
> index 000000000000..3af24ca8009f
> --- /dev/null
> +++ b/tools/testing/selftests/bpf/prog_tests/private_stack_runtime.c
> @@ -0,0 +1,83 @@

[ ... ]

> +     if (!skel->rodata->has_stack_args) {
> +             test__skip();
> +             goto out;
> +     }

A subsystem pattern flags this as potentially concerning: a selftest that
skips without printing a reason.  Both skip paths call test__skip() bare,
this one when the compiler lacks __BPF_FEATURE_STACK_ARGUMENT
(has_stack_args is false), and the other in the non-riscv64 branch:

    #else
        test__skip();
    #endif

Without a message, the test shows up as SKIP with no hint whether clang
needs to be upgraded or the test is only built for riscv64.  Would a
printf() before test__skip(), like the "%s:SKIP: ..." message that
test_loader's run_subtest() prints, make the cause visible?

This may be acceptable as is: test_progs does report the test as SKIP, and
prog_tests/stack_arg.c and prog_tests/struct_ops_private_stack.c also call
test__skip() without a message.


---
AI reviewed your patch. Please fix the bug or email reply why it's not a bug.
See: https://github.com/kernel-patches/vmtest/blob/master/ci/claude/README.md

CI run summary: https://github.com/kernel-patches/bpf/actions/runs/38671177164

Reply via email to