From acfbd1552e0406c397afa6d03fc2088acb059228 Mon Sep 17 00:00:00 2001 From: Cheng-Yang Chou Date: Mon, 20 Apr 2026 14:54:44 +0800 Subject: [PATCH] sched_ext: Documentation: clarify arena-backed doubly-linked lists in scx_qmap Update scx_qmap description to reflect arena-backed doubly-linked lists with per-queue bpf_res_spin_lock. Also update scx_qmap.bpf.c to reflect switch from PIDs to TIDs. Suggested-by: Tejun Heo Signed-off-by: Cheng-Yang Chou Signed-off-by: Tejun Heo --- Documentation/scheduler/sched-ext.rst | 2 +- tools/sched_ext/README.md | 6 +++--- tools/sched_ext/scx_qmap.bpf.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Documentation/scheduler/sched-ext.rst b/Documentation/scheduler/sched-ext.rst index fba09aa1cd4e..c4f59c08d8a4 100644 --- a/Documentation/scheduler/sched-ext.rst +++ b/Documentation/scheduler/sched-ext.rst @@ -508,7 +508,7 @@ Where to Look custom DSQ. * ``scx_qmap[.bpf].c``: A multi-level FIFO scheduler supporting five - levels of priority implemented with ``BPF_MAP_TYPE_QUEUE``. + levels of priority implemented with arena-backed doubly-linked lists. * ``scx_central[.bpf].c``: A central FIFO scheduler where all scheduling decisions are made on one CPU, demonstrating ``LOCAL_ON`` dispatching, diff --git a/tools/sched_ext/README.md b/tools/sched_ext/README.md index 6e282bce453c..0ee5a3d997e5 100644 --- a/tools/sched_ext/README.md +++ b/tools/sched_ext/README.md @@ -168,9 +168,9 @@ well on single-socket systems with a unified L3 cache. Another simple, yet slightly more complex scheduler that provides an example of a basic weighted FIFO queuing policy. It also provides examples of some common -useful BPF features, such as sleepable per-task storage allocation in the -`ops.prep_enable()` callback, and using the `BPF_MAP_TYPE_QUEUE` map type to -enqueue tasks. It also illustrates how core-sched support could be implemented. +useful BPF features, such as arena-backed doubly-linked lists threaded through +per-task context and `bpf_res_spin_lock` for per-queue synchronization. It also +illustrates how core-sched support could be implemented. ## scx_central diff --git a/tools/sched_ext/scx_qmap.bpf.c b/tools/sched_ext/scx_qmap.bpf.c index 2f4c45f6544d..a73a2dcbaeb7 100644 --- a/tools/sched_ext/scx_qmap.bpf.c +++ b/tools/sched_ext/scx_qmap.bpf.c @@ -10,7 +10,7 @@ * * This scheduler demonstrates: * - * - BPF-side queueing using PIDs. + * - BPF-side queueing using TIDs. * - BPF arena for scheduler state. * - Core-sched support. *