Re: [RFC PATCH bpf-next v4 3/3] selftests/bpf: build each test runner instance in its own sub-make

Mykola Lysenko <[email protected]> Tue, 4 Aug 2026 13:43:13 -0700
Newsgroups org.kernel.vger.bpf,dev.linux.lists.sashiko-reviews
Message-ID <CAMtxOX1rW=piosQaHrbv_fTLGHf3QSgMEWnsSE0hO8FJFDf1_w@mail.gmail.com>
Correct - the message was stale (the derivation was dropped in v4 per
review); wording fixed in v5, no code change needed:
https://lore.kernel.org/bpf/[email protected]/

On Thu, Jul 23, 2026 at 9:35 PM <[email protected]> wrote:
>
> Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
> - [Medium] The commit message claims that light-skeleton demand lists are derived dynamically, but the implementation retains hardcoded lists.
> --
>
> --- Patch [3]: [RFC PATCH bpf-next v4 3/3] selftests/bpf: build each test runner instance in its own sub-make ---
> commit a1ebeec9064cd1ef457a1d6c67e818e26521e31b
> Author: Mykola Lysenko <[email protected]>
>
> selftests/bpf: build each test runner instance in its own sub-make
>
> This commit replaces the double-expansion test runner logic with a
> Makefile.runner script invoked per test runner instance. It aims to simplify
> the build system and fixes a latent parallel-build race condition.
>
> >     standalone binaries and the kselftest lib.mk contract - and delegates to
> >     the runner through explicit per-instance rules. Light-skeleton demand
> >     lists are derived from the tests' own '#include "*.lskel.h"' lines; the
> >     bench object list is derived from $(wildcard benchs/bench_*.c).
>
> [Severity: Medium]
> The commit message mentions that the light-skeleton demand lists are derived
> dynamically, but the implementation in Makefile.runner retains the hardcoded
> lists.
>
> Was the dynamic derivation logic dropped from this patch, or does the commit
> message need to be updated to match the code?
>
> For reference, Makefile.runner still hardcodes the lists here:
>
> > diff --git a/tools/testing/selftests/bpf/Makefile.runner b/tools/testing/selftests/bpf/Makefile.runner
> > new file mode 100644
> > index 0000000000000..ced44aad7eded
> > --- /dev/null
> > +++ b/tools/testing/selftests/bpf/Makefile.runner
> [ ... ]
> > +LSKELS := fexit_sleep.c trace_printk.c trace_vprintk.c map_ptr_kern.c        \
> > +     core_kern.c core_kern_overflow.c test_ringbuf.c                 \
> > +     test_ringbuf_n.c test_ringbuf_map_key.c test_ringbuf_write.c    \
> > +     test_ringbuf_overwrite.c
> > +
> > +LSKELS_SIGNED := fentry_test.c fexit_test.c atomics.c
> > +
> > +# Generate both light skeleton and libbpf skeleton for these
> > +LSKELS_EXTRA := test_ksyms_module.c test_ksyms_weak.c kfunc_call_test.c \
> > +     kfunc_call_test_subprog.c
>
> --
> Sashiko AI review · https://sashiko.dev/#/patchset/[email protected]?part=3