Re: [PATCH bpf-next v2 5/5] selftests/bpf: verify zext_dst annotations for various instructions
Eduard Zingerman <[email protected]> Fri, 31 Jul 2026 21:24:44 -0700
| Newsgroups | org.kernel.vger.bpf,dev.linux.lists.sashiko-reviews |
|---|---|
| Message-ID | <[email protected]> |
On Sat, 2026-08-01 at 01:33 +0000, [email protected] wrote: > Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: > - [Medium] Missing bpf_testmod dependency check in test_verifier_zext, causing spurious test failures when the module is not loaded. > -- > > --- Patch [5]: [PATCH bpf-next v2 5/5] selftests/bpf: verify zext_dst annotations for various instructions --- > commit 9e656f5e6b04a69526327df6f70d8c362d02d3d4 > Author: Eduard Zingerman <[email protected]> > > selftests/bpf: verify zext_dst annotations for various instructions > > This commit adds a suite of selftests to verify the verifier's zero extension > behavior across various instructions and state pruning scenarios. It covers > cases like 32-bit and 64-bit operations, atomic instructions, kfunc parameters, > and CFG edge cases. > > > diff --git a/tools/testing/selftests/bpf/prog_tests/verifier.c b/tools/testing/selftests/bpf/prog_tests/verifier.c > > index be97f6887f0e7..fba562c819691 100644 > > --- a/tools/testing/selftests/bpf/prog_tests/verifier.c > > +++ b/tools/testing/selftests/bpf/prog_tests/verifier.c > [ ... ] > > @@ -277,6 +278,7 @@ void test_irq(void) { RUN(irq); } > > void test_verifier_mtu(void) { RUN(verifier_mtu); } > > void test_verifier_jit_inline(void) { RUN(verifier_jit_inline); } > > void test_verifier_ctx_ptr_param(void) { RUN(verifier_ctx_ptr_param); } > > +void test_verifier_zext(void) { RUN_TESTS(verifier_zext); } > > [Severity: Medium] > Since verifier_zext.c calls bpf_kfunc_call_test4 (an extern kfunc from > bpf_testmod), will this test fail spuriously if bpf_testmod is not loaded? > > Should this check env.has_testmod and call test__skip() before RUN_TESTS > to gracefully skip the test when the module is unavailable? Idk, bpf_kfunc_call_test4() is used by the test progs/kfunc_call_test.c prog_tests/kfunc_call.c, which itself does not check for env.has_testmod. I don't think we enforce this rigorously, nor that we should.