diff options
| author | Tejun Heo <tj@kernel.org> | 2026-05-22 07:06:00 -1000 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-05-25 09:44:07 -1000 |
| commit | 0e2819cba977f910c7eeaf77c705e28787c3385d (patch) | |
| tree | 1d459d4156a721d2eb33fec2eca59173ca60b7d2 /include/linux/root_dev.h | |
| parent | 639609b83f69fe4cd08e01423ae8e12d84484cfa (diff) | |
sched_ext: Require an arena for cid-form schedulers
Upcoming patches will let the kernel place arena-resident scratch shared
with the BPF program (e.g. per-CPU set_cmask cmask) so the BPF side can
dereference it directly via __arena pointers, replacing the current
cmask_copy_from_kernel() probe-read loop. That requires each cid-form
scheduler to expose its arena to the kernel. Kernel- side accesses are
recovered by the per-arena scratch-page mechanism.
bpf_scx_reg_cid() walks the struct_ops member progs via
bpf_struct_ops_for_each_prog() and reads each prog's arena via
bpf_prog_arena(). The verifier enforces one arena per program, so each
member prog contributes at most one arena. All non-NULL contributions must
match and at least one member prog must use an arena. The map ref is held on
scx_sched and dropped on sched destroy. cpu-form schedulers (bpf_scx_reg)
are unchanged - no arena requirement.
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/linux/root_dev.h')
0 files changed, 0 insertions, 0 deletions
