]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
Merge branch 'selftests-bpf-fix-flaky-build_id-test'
authorAlexei Starovoitov <ast@kernel.org>
Thu, 19 Feb 2026 19:29:41 +0000 (11:29 -0800)
committerAlexei Starovoitov <ast@kernel.org>
Thu, 19 Feb 2026 19:29:42 +0000 (11:29 -0800)
Gregory Bell says:

====================
selftests/bpf: fix flaky build_id test

The build_id selftest intermittently fails with the following error:

./test_progs -t build_id/nofault-paged-out
serial_test_build_id:PASS:parse_build_id 0 nsec
subtest_nofault:PASS:skel_open 0 nsec
subtest_nofault:PASS:link 0 nsec
subtest_nofault:PASS:trigger_uprobe 0 nsec
subtest_nofault:PASS:res 0 nsec
subtest_nofault:FAIL:build_id_status unexpected build_id_status: actual 1 != expected 2
46/1    build_id/nofault-paged-out:FAIL
46      build_id:FAIL
397     stacktrace_build_id:OK
398     stacktrace_build_id_nmi:OK

On RHEL we consistently hit the reported failure on the first run of
the test following installation, after which subsequent runs pass.

This patch implements the approach discussed in the following thread:
https://lore.kernel.org/all/CAEf4BzYWVtfZh07iQm5Fo=kMm+8hgAu+rXRx1uLRHz07wc59+Q@mail.gmail.com/

Following the discussion, the fix makes the test verify eviction rather
than assuming it. In the discussion it was recommended to add a sleep before
and after the madvise operations, this did not resolve the issue in our case,
rather the test timed out every time. I was successful by retrying the
page-out sequence until the page is actually evicted.

Additionally, the mapping alignment is increased to
64K so the test operates on a properly page-aligned buffer across
supported architectures.

changelog:
 - fixed indentations
 - removed trailing whitespace
 - add space between opening and closing brackets

====================

Link: https://patch.msgid.link/cover.1771338492.git.grbell@redhat.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>

Trivial merge