From: Ihor Solodrai <ihor.solodrai@linux.dev>
To: Mykyta Yatsenko <mykyta.yatsenko5@gmail.com>,
bpf@vger.kernel.org, ast@kernel.org, andrii@kernel.org,
daniel@iogearbox.net, kafai@meta.com, kernel-team@meta.com,
eddyz87@gmail.com
Cc: Mykyta Yatsenko <yatsenko@meta.com>
Subject: Re: [PATCH bpf-next v1] selftests/bpf: fix file_reader test
Date: Wed, 29 Oct 2025 14:49:17 -0700 [thread overview]
Message-ID: <ac753f54-0e20-4f95-ae93-3376eb77dc89@linux.dev> (raw)
In-Reply-To: <20251029195907.858217-1-mykyta.yatsenko5@gmail.com>
On 10/29/25 12:59 PM, Mykyta Yatsenko wrote:
> From: Mykyta Yatsenko <yatsenko@meta.com>
>
> file_reader/on_open_expect_fault intermittently fails when test_progs
> runs tests in parallel, because it expects a page fault on first read.
> Another file_reader test running concurrently may have already pulled
> the same pages into the page cache, eliminating the fault and causing a
> spurious failure.
>
> Make file_reader/on_open_expect_fault read from a file region that does
> not overlap with other file_reader tests, so the initial access still
> faults even under parallel execution.
>
> Signed-off-by: Mykyta Yatsenko <yatsenko@meta.com>
> ---
> tools/testing/selftests/bpf/prog_tests/file_reader.c | 6 +++++-
> tools/testing/selftests/bpf/progs/file_reader.c | 2 +-
> 2 files changed, 6 insertions(+), 2 deletions(-)
No more failures on CI:
https://github.com/kernel-patches/bpf/actions/runs/18920720310/job/54022355262
Thank you for fixing.
Acked-by: Ihor Solodrai <ihor.solodrai@linux.dev>
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/file_reader.c b/tools/testing/selftests/bpf/prog_tests/file_reader.c
> index 2a034d43b73e..5cde32b35da4 100644
> --- a/tools/testing/selftests/bpf/prog_tests/file_reader.c
> +++ b/tools/testing/selftests/bpf/prog_tests/file_reader.c
> @@ -52,7 +52,11 @@ static int initialize_file_contents(void)
> /* page-align base file address */
> addr = (void *)((unsigned long)addr & ~(page_sz - 1));
>
> - for (off = 0; off < sizeof(file_contents); off += page_sz) {
> + /*
> + * Page out range 0..512K, use 0..256K for positive tests and
> + * 256K..512K for negative tests expecting page faults
> + */
> + for (off = 0; off < sizeof(file_contents) * 2; off += page_sz) {
> if (!ASSERT_OK(madvise(addr + off, page_sz, MADV_PAGEOUT),
> "madvise pageout"))
> return errno;
> diff --git a/tools/testing/selftests/bpf/progs/file_reader.c b/tools/testing/selftests/bpf/progs/file_reader.c
> index 2585f83b0ce5..166c3ac6957d 100644
> --- a/tools/testing/selftests/bpf/progs/file_reader.c
> +++ b/tools/testing/selftests/bpf/progs/file_reader.c
> @@ -49,7 +49,7 @@ int on_open_expect_fault(void *c)
> if (bpf_dynptr_from_file(file, 0, &dynptr))
> goto out;
>
> - local_err = bpf_dynptr_read(tmp_buf, user_buf_sz, &dynptr, 0, 0);
> + local_err = bpf_dynptr_read(tmp_buf, user_buf_sz, &dynptr, user_buf_sz, 0);
> if (local_err == -EFAULT) { /* Expect page fault */
> local_err = 0;
> run_success = 1;
next prev parent reply other threads:[~2025-10-29 21:49 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-10-29 19:59 [PATCH bpf-next v1] selftests/bpf: fix file_reader test Mykyta Yatsenko
2025-10-29 21:49 ` Ihor Solodrai [this message]
2025-10-30 1:20 ` patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ac753f54-0e20-4f95-ae93-3376eb77dc89@linux.dev \
--to=ihor.solodrai@linux.dev \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=kafai@meta.com \
--cc=kernel-team@meta.com \
--cc=mykyta.yatsenko5@gmail.com \
--cc=yatsenko@meta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.