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>,
Eduard Zingerman <eddyz87@gmail.com>,
Emil Tsalapatis <emil@etsalapatis.com>, Tejun Heo <tj@kernel.org>,
kkd@meta.com, kernel-team@meta.com
Subject: [PATCH bpf-next v2 0/9] Add arena argument support to kfuncs and struct_ops
Date: Sun, 26 Jul 2026 03:30:53 +0200 [thread overview]
Message-ID: <20260726013105.3689867-1-memxor@gmail.com> (raw)
This is a continuation of patches in [0], with mostly minor changes and
reordering. The motivation is covered in that link. A major change is
moving to two tags (__arena and __arena_nullable) and moving the changes
to JIT to emit more optimized sequences.
Please see commit logs for details.
[0]: https://lore.kernel.org/bpf/20260713024414.3759854-1-tj@kernel.org
Changelog:
----------
v1 -> v2
v1: https://lore.kernel.org/bpf/20260715220052.1590783-1-memxor@gmail.com
* Fix documentation to only mention x86 for now. (Sashiko)
* Move arg bitmap from insn_aux_data to kfunc descriptor. (Eduard)
Tejun Heo (9):
bpf: Support __arena and __arena_nullable kfunc argument suffixes
bpf: Support __arena and __arena_nullable on struct_ops arguments
bpf, x86: JIT __arena kfunc argument rebasing
bpf, x86: Convert struct_ops arena arguments in the trampoline
selftests/bpf: Add kfunc __arena and __arena_nullable argument tests
selftests/bpf: Add JIT-sequence tests for __arena kfunc arguments
selftests/bpf: Add struct_ops __arena and __arena_nullable argument
tests
bpf, x86: Fix stack-passed arguments for indirect trampolines
selftests/bpf: Test stack-passed struct_ops arena arguments
Documentation/bpf/kfuncs.rst | 39 +++
arch/x86/net/bpf_jit_comp.c | 129 ++++++++-
include/linux/bpf.h | 25 ++
include/linux/filter.h | 1 +
kernel/bpf/bpf_struct_ops.c | 34 ++-
kernel/bpf/btf.c | 28 +-
kernel/bpf/core.c | 5 +
kernel/bpf/trampoline.c | 64 +++++
kernel/bpf/verifier.c | 62 ++++-
.../selftests/bpf/prog_tests/arena_kfunc.c | 15 +
.../bpf/prog_tests/arena_kfunc_jit.c | 13 +
.../bpf/prog_tests/test_struct_ops_arena.c | 74 +++++
.../testing/selftests/bpf/progs/arena_kfunc.c | 260 ++++++++++++++++++
.../selftests/bpf/progs/arena_kfunc_jit.c | 96 +++++++
.../selftests/bpf/progs/struct_ops_arena.c | 115 ++++++++
.../bpf/progs/struct_ops_arena_fail.c | 20 ++
.../selftests/bpf/test_kmods/bpf_testmod.c | 95 +++++++
.../selftests/bpf/test_kmods/bpf_testmod.h | 6 +
.../bpf/test_kmods/bpf_testmod_kfunc.h | 13 +
19 files changed, 1062 insertions(+), 32 deletions(-)
create mode 100644 tools/testing/selftests/bpf/prog_tests/arena_kfunc.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/arena_kfunc_jit.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/test_struct_ops_arena.c
create mode 100644 tools/testing/selftests/bpf/progs/arena_kfunc.c
create mode 100644 tools/testing/selftests/bpf/progs/arena_kfunc_jit.c
create mode 100644 tools/testing/selftests/bpf/progs/struct_ops_arena.c
create mode 100644 tools/testing/selftests/bpf/progs/struct_ops_arena_fail.c
base-commit: 4748a67f711188cbd64bc72c3df636f627858ed0
--
2.53.0
next reply other threads:[~2026-07-26 1:31 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-26 1:30 Kumar Kartikeya Dwivedi [this message]
2026-07-26 1:30 ` [PATCH bpf-next v2 1/9] bpf: Support __arena and __arena_nullable kfunc argument suffixes Kumar Kartikeya Dwivedi
2026-07-26 1:47 ` sashiko-bot
2026-07-26 2:01 ` Kumar Kartikeya Dwivedi
2026-07-26 1:30 ` [PATCH bpf-next v2 2/9] bpf: Support __arena and __arena_nullable on struct_ops arguments Kumar Kartikeya Dwivedi
2026-07-26 1:30 ` [PATCH bpf-next v2 3/9] bpf, x86: JIT __arena kfunc argument rebasing Kumar Kartikeya Dwivedi
2026-07-26 2:22 ` bot+bpf-ci
2026-07-26 2:25 ` Kumar Kartikeya Dwivedi
2026-07-26 1:30 ` [PATCH bpf-next v2 4/9] bpf, x86: Convert struct_ops arena arguments in the trampoline Kumar Kartikeya Dwivedi
2026-07-26 1:30 ` [PATCH bpf-next v2 5/9] selftests/bpf: Add kfunc __arena and __arena_nullable argument tests Kumar Kartikeya Dwivedi
2026-07-26 1:41 ` sashiko-bot
2026-07-26 2:02 ` Kumar Kartikeya Dwivedi
2026-07-26 1:30 ` [PATCH bpf-next v2 6/9] selftests/bpf: Add JIT-sequence tests for __arena kfunc arguments Kumar Kartikeya Dwivedi
2026-07-26 1:44 ` sashiko-bot
2026-07-26 1:31 ` [PATCH bpf-next v2 7/9] selftests/bpf: Add struct_ops __arena and __arena_nullable argument tests Kumar Kartikeya Dwivedi
2026-07-26 1:31 ` [PATCH bpf-next v2 8/9] bpf, x86: Fix stack-passed arguments for indirect trampolines Kumar Kartikeya Dwivedi
2026-07-26 1:51 ` sashiko-bot
2026-07-26 2:05 ` Kumar Kartikeya Dwivedi
2026-07-26 1:31 ` [PATCH bpf-next v2 9/9] selftests/bpf: Test stack-passed struct_ops arena arguments 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=20260726013105.3689867-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=emil@etsalapatis.com \
--cc=kernel-team@meta.com \
--cc=kkd@meta.com \
--cc=tj@kernel.org \
/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