On Wed, Aug 05, 2026 at 02:54:34PM -0300, Ricardo B. Marlière (SUSE) wrote:
> Hi, backporting commit 23b933c6223f ("bpf: Verifier support for sleepable
> tracepoint programs") without backporting this commit breaks the selftest,
> as seen in openSUSE CI:
Agreed on the diagnosis: 23b933c6223f went into 7.1.y as a Stable-dep-of
and changed the verifier error string without updating the expectation,
so the verifier/sleepable.c hunk is both correct and needed there.
The rest of the commit is the problem:
> .../bpf/prog_tests/sleepable_tracepoints.c | 142
> +++++++++++++++++++++
> .../bpf/progs/test_sleepable_tracepoints.c | 112 ++++++++++++++++
> .../bpf/progs/test_sleepable_tracepoints_fail.c | 18 +++
> tools/testing/selftests/bpf/verifier/sleepable.c | 17 ++-
The three new files use SEC("tp_btf.s/..."), SEC("raw_tp.s/...") and
SEC("tp.s/..."). 7.1.y does not carry 0cd420a6f40c7 ("libbpf: Add section
handlers for sleepable tracepoints"), so its libbpf has no SEC_DEF entry
for any ".s" tracepoint variant, and sec_def_matches() will not match a
".s" suffix against the plain "tp_btf+"/"raw_tp+"/"tp+" entries. Every
program in the two new progs/ files then fails to load and
test_sleepable_tracepoints__open_and_load() fails outright - so as posted
this trades a test_verifier failure for a permanently failing test_progs
test.
The runtime pieces are missing from 7.1.y as well - 439ebd5b5708 ("bpf:
Add sleepable support for raw tracepoint programs"), 12628ffaf98b ("bpf:
Add bpf_prog_run_array_sleepable()") and 57918341dd19 ("bpf: Add
sleepable support for classic tracepoint programs") - so even with the
libbpf section handlers the functional subtests would still fail.
Could you send a v2 carrying only the
tools/testing/selftests/bpf/verifier/sleepable.c hunk, with a note in the
commit message explaining why the new prog_tests/ and progs/ files are
omitted?
--
Thanks,
Sasha