All of lore.kernel.org
 help / color / mirror / Atom feed
From: patchwork-bot+netdevbpf@kernel.org
To: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Cc: bpf@vger.kernel.org, ast@kernel.org, andrii@kernel.org,
	daniel@iogearbox.net, eddyz87@gmail.com, emil@etsalapatis.com,
	ihor.solodrai@linux.dev, tj@kernel.org, kkd@meta.com,
	kernel-team@meta.com
Subject: Re: [PATCH bpf-next v5 00/16] Fix some arena paper cuts
Date: Mon, 19 Oct 2026 19:50:09 +0000	[thread overview]
Message-ID: <179243940978.3292775.11903554212923646408.git-patchwork-notify@kernel.org> (raw)
In-Reply-To: <20261019132203.3034698-1-memxor@gmail.com>

Hello:

This series was applied to bpf/bpf-next.git (master)
by Alexei Starovoitov <ast@kernel.org>:

On Mon, 19 Oct 2026 15:21:42 +0200 you wrote:
> Kernel code that shares arena memory with BPF programs runs into two
> paper cuts, both visible in sched_ext's cid-form schedulers today.
> 
> A kernel struct cannot publish an arena pointer: a pointer member reaches
> the program typed as a kernel pointer, so sched_ext hands out a plain u64
> holding a pre-translated arena address and every program casts it before
> use. __arena and __nullable become BTF type tags, defined in a header of
> their own, bpf_compiler_types.h, that the code tagging a member includes.
> A load through an __arena member of a kernel struct yields PTR_TO_ARENA:
> the member holds the kernel address and the fixup pass appends the
> conversion to the arena pointer form that the struct_ops trampoline
> applies to __arena arguments, with a NULL test for __nullable members.
> A __nullable member on its own yields PTR_MAYBE_NULL where NULL would
> otherwise be assumed away, on trusted, RCU and per-CPU results, and the
> program checks it; through a plain or an untrusted pointer the member is
> probed and tolerates NULL, as the BTF_TYPE_SAFE_*_OR_NULL lists never
> applied there either. libbpf renders the arena tag with its address
> space, so the member arrives in a program built against vmlinux.h ready
> to use, without a cast.
> 
> [...]

Here is the summary with links:
  - [bpf-next,v5,01/16] bpf: Check exclusive maps once the program digest is final
    https://git.kernel.org/bpf/bpf-next/c/55f17779d649
  - [bpf-next,v5,02/16] selftests/bpf: Bind an exclusive map through a continuous fd_array
    https://git.kernel.org/bpf/bpf-next/c/c2e56c88f14a
  - [bpf-next,v5,03/16] libbpf: Keep the fd_array fill index out of bpf_program__clone()
    https://git.kernel.org/bpf/bpf-next/c/b1eaee8b9a95
  - [bpf-next,v5,04/16] selftests/bpf: Clone a program that calls a module kfunc
    https://git.kernel.org/bpf/bpf-next/c/d837f008bfe6
  - [bpf-next,v5,05/16] bpf: Add the __arena and __nullable BTF type tags
    https://git.kernel.org/bpf/bpf-next/c/10832993c941
  - [bpf-next,v5,06/16] bpf: Recognize __nullable on pointer members of kernel structs
    https://git.kernel.org/bpf/bpf-next/c/bc7c2824682b
  - [bpf-next,v5,07/16] bpf: Turn loads of __arena pointer members into arena pointers
    https://git.kernel.org/bpf/bpf-next/c/7efe1d4e1139
  - [bpf-next,v5,08/16] selftests/bpf: Test __nullable pointer members
    https://git.kernel.org/bpf/bpf-next/c/9278bedb22de
  - [bpf-next,v5,09/16] selftests/bpf: Test __arena pointer members
    https://git.kernel.org/bpf/bpf-next/c/1dad22de9c03
  - [bpf-next,v5,10/16] selftests/bpf: Move the no-arena tests out of objects with an arena map
    https://git.kernel.org/bpf/bpf-next/c/bc4a327d5b87
  - [bpf-next,v5,11/16] libbpf: Bind the arena of an object to every program in it
    https://git.kernel.org/bpf/bpf-next/c/cd7a395838cb
  - [bpf-next,v5,12/16] selftests/bpf: Test arena binding by libbpf
    https://git.kernel.org/bpf/bpf-next/c/8911d7766073
  - [bpf-next,v5,13/16] bpf: Set up the arena base only in functions that use it
    https://git.kernel.org/bpf/bpf-next/c/a8471eb0747f
  - [bpf-next,v5,14/16] libbpf: Render the arena type tag with its address space
    https://git.kernel.org/bpf/bpf-next/c/7418d9291c57
  - [bpf-next,v5,15/16] selftests/bpf: Test the address space rendering of the arena type tag
    https://git.kernel.org/bpf/bpf-next/c/31ef8ab6dfc7
  - [bpf-next,v5,16/16] selftests/bpf: Test an arena kfunc argument passed from a subprogram
    https://git.kernel.org/bpf/bpf-next/c/fb854e2e54a7

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



      parent reply	other threads:[~2026-10-19 19:50 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-19 13:21 [PATCH bpf-next v5 00/16] Fix some arena paper cuts Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 01/16] bpf: Check exclusive maps once the program digest is final Kumar Kartikeya Dwivedi
2026-10-19 13:48   ` sashiko-bot
2026-10-19 14:10     ` Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 02/16] selftests/bpf: Bind an exclusive map through a continuous fd_array Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 03/16] libbpf: Keep the fd_array fill index out of bpf_program__clone() Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 04/16] selftests/bpf: Clone a program that calls a module kfunc Kumar Kartikeya Dwivedi
2026-10-19 13:29   ` sashiko-bot
2026-10-19 13:21 ` [PATCH bpf-next v5 05/16] bpf: Add the __arena and __nullable BTF type tags Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 06/16] bpf: Recognize __nullable on pointer members of kernel structs Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 07/16] bpf: Turn loads of __arena pointer members into arena pointers Kumar Kartikeya Dwivedi
2026-10-19 14:03   ` bot+bpf-ci
2026-10-19 13:21 ` [PATCH bpf-next v5 08/16] selftests/bpf: Test __nullable pointer members Kumar Kartikeya Dwivedi
2026-10-19 14:03   ` bot+bpf-ci
2026-10-19 13:21 ` [PATCH bpf-next v5 09/16] selftests/bpf: Test __arena " Kumar Kartikeya Dwivedi
2026-10-19 14:03   ` bot+bpf-ci
2026-10-19 13:21 ` [PATCH bpf-next v5 10/16] selftests/bpf: Move the no-arena tests out of objects with an arena map Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 11/16] libbpf: Bind the arena of an object to every program in it Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 12/16] selftests/bpf: Test arena binding by libbpf Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 13/16] bpf: Set up the arena base only in functions that use it Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 14/16] libbpf: Render the arena type tag with its address space Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 15/16] selftests/bpf: Test the address space rendering of the arena type tag Kumar Kartikeya Dwivedi
2026-10-19 13:21 ` [PATCH bpf-next v5 16/16] selftests/bpf: Test an arena kfunc argument passed from a subprogram Kumar Kartikeya Dwivedi
2026-10-19 19:50 ` patchwork-bot+netdevbpf [this message]

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=179243940978.3292775.11903554212923646408.git-patchwork-notify@kernel.org \
    --to=patchwork-bot+netdevbpf@kernel.org \
    --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=ihor.solodrai@linux.dev \
    --cc=kernel-team@meta.com \
    --cc=kkd@meta.com \
    --cc=memxor@gmail.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 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.