From: Kumar Kartikeya Dwivedi <memxor@gmail.com>
To: bpf@vger.kernel.org
Cc: Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Martin KaFai Lau <martin.lau@kernel.org>,
Eduard Zingerman <eddyz87@gmail.com>,
Mykyta Yatsenko <yatsenko@meta.com>,
kkd@meta.com, kernel-team@meta.com
Subject: [RFC PATCH bpf-next v1 0/6] Concurrency Testing
Date: Wed, 11 Feb 2026 10:12:40 -0800 [thread overview]
Message-ID: <20260211181248.3040142-1-memxor@gmail.com> (raw)
This set introduces basic tooling to generate more exhaustive test cases
for task<->NMI reentrancy and parallel invocation of various operations
associated with rqspinlock, timer, wq, and task_work. For now, the
approach is simple: test cases are generated up to a maximum specified
level of parallelism for the operations to be invoked vertically against
each other (on the same CPU, in different contexts), and horizontally
(in parallel). To cut down test time, similar cases are pruned out after
generation (e.g. start vs cancel and cancel vs start in parallel on two
CPUs are similar, thus only one combination should be tested).
More details are in the commit log.
Kumar Kartikeya Dwivedi (6):
bpf: Support repeat, duration fields for syscall prog runs
bpf: Allow timing functions in lock critical sections
bpf: Enable rqspinlock in tracing progs
selftests/bpf: Introduce concurrency testing tool
selftests/bpf: Generate various conctest permutations
selftests/bpf: Extend conctest to wq and task_work
kernel/bpf/verifier.c | 9 +-
net/bpf/test_run.c | 92 +-
tools/testing/selftests/bpf/Makefile | 6 +
tools/testing/selftests/bpf/conctest.c | 1110 ++++++++++++++++++
tools/testing/selftests/bpf/progs/conctest.c | 758 ++++++++++++
5 files changed, 1955 insertions(+), 20 deletions(-)
create mode 100644 tools/testing/selftests/bpf/conctest.c
create mode 100644 tools/testing/selftests/bpf/progs/conctest.c
base-commit: dc855b77719fe452d670cae2cf64da1eb51f16cc
--
2.47.3
next reply other threads:[~2026-02-11 18:12 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-11 18:12 Kumar Kartikeya Dwivedi [this message]
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 1/6] bpf: Support repeat, duration fields for syscall prog runs Kumar Kartikeya Dwivedi
2026-02-11 22:02 ` Alexei Starovoitov
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 2/6] bpf: Allow timing functions in lock critical sections Kumar Kartikeya Dwivedi
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 3/6] bpf: Enable rqspinlock in tracing progs Kumar Kartikeya Dwivedi
2026-02-11 22:04 ` Alexei Starovoitov
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 4/6] selftests/bpf: Introduce concurrency testing tool Kumar Kartikeya Dwivedi
2026-02-11 22:08 ` Alexei Starovoitov
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 5/6] selftests/bpf: Generate various conctest permutations Kumar Kartikeya Dwivedi
2026-02-11 22:09 ` Alexei Starovoitov
2026-02-11 18:12 ` [RFC PATCH bpf-next v1 6/6] selftests/bpf: Extend conctest to wq and task_work Kumar Kartikeya Dwivedi
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=20260211181248.3040142-1-memxor@gmail.com \
--to=memxor@gmail.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=kernel-team@meta.com \
--cc=kkd@meta.com \
--cc=martin.lau@kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox