Description
sched_ext[1] is a Linux kernel feature that enables implementing safe task schedulers in BPF and dynamically loading them at runtime. Its key strength is flexibility, allowing rapid iteration of scheduling policies, deploying changes on the fly and quickly addressing topology inefficiencies or workload-specific issues.
This MC provides a space for the community to discuss the evolution of sched_ext, its impact and future strategies aimed at improving integration with other Linux kernel subsystems.
Last year the sched_ext MC proved highly productive in facilitating coordination with other kernel maintainers, allowing us to address open issues and limitations of this technology (see for example the introduction of a dedicated DL server for the SCHED_EXT scheduling class [2]).
Topics for discussion include (but are not limited to):
- Hierarchical cgroup sub-schedulers
- Integration with SCHED_DEADLINE (DL server interface and related improvements)
- Proxy execution support
- Device-aware scheduling policies (e.g., GPU auto-affinitization)
- Composable schedulers and reusable scheduler libraries (leveraging BPF arenas)
- Scheduling strategies for gaming and latency-sensitive workloads
- Tickless scheduling and CPU isolation
- Improved tooling for tracing and visualizing scheduler performance
A public CFP will follow to gather additional topics that may be relevant to the Linux community.
Key attendees:
- Andrea Righi
- Changwoo Min
- Tejun Heo
- Peter Zijlstra
- Juri Lelli
- Vincent Guittot
- Dietmar Eggemann
- Steven Rostedt
- K Prateek Nayak
- John Stulz
- Shrikanth Hegde
- Emil Tsalapatis
- Daniel Hodges
- Christian Loehle
- Ryan Newton
[1] https://github.com/sched-ext/scx
[2] https://lore.kernel.org/all/20260126100050.3854740-1-arighi@nvidia.com
-
07/10/2026, 15:00
-
Josh Don (Google), Mr Vineeth Remanan Pillai (Google)07/10/2026, 15:10
As production workloads increasingly transition to virtual machines for security isolation and resource consolidation in multi-tenant environments, traditional CPU scheduling faces a critical M:N preemption challenge. The host operating system schedules opaque virtual CPUs rather than the actual workload threads. Consequently, the host scheduler remains blind to the varying priorities and...
Go to contribution page -
Emil Tsalapatis (Meta Platforms)07/10/2026, 15:28
All sched_ext schedulers currently use kfuncs to manage their idle cpumask using a hardcoded policy provided by the kernel. This lack of configurability of the current cpumask requires us to add policy through explicit masking operations directly in the scheduler code. This in turn leads to duplicating idle CPU selection logic across schedulers as it is difficult to factor it out.
This...
Go to contribution page -
Changwoo Min (Igalia)07/10/2026, 15:46
Preempting a lock holder โ or failing to promptly schedule a just-woken
Go to contribution page
lock waiter โ extends the serialized critical section and produces severe
tail-latency (P99) spikes: degraded server throughput, frame-time
spikes and dropped frames in games. Applications hit this on both
kernel-space locks and user-space primitives backed by futexes and SysV
semaphores. Existing techniques help but... -
Andrea Righi (NVIDIA)07/10/2026, 16:04
Proxy execution allows a waiting task (the "donor") to donate its execution context to a mutex owner, enabling the owner to continue running while the donor remains eligible on the runqueue.
Today, proxy execution and sched_ext are mutually exclusive build-time options: a kernel cannot be built with both CONFIG_SCHED_PROXY_EXEC=y and CONFIG_SCHED_CLASS_EXT=y.
This limitation is...
Go to contribution page -
Gavin Guo07/10/2026, 17:00
Work-conserving schedulers prefer running tasks on idle CPUs
Go to contribution page
immediately, ensuring no processing capacity is wasted while work is
waiting. In the lavd select_cpu process, when a task wakes, the
scheduler will do its best to seek an idle core and run the task over
there. However, this idle-oriented CPU selection generally prioritizes
idle cores over the cache-warm cores, leading to more... -
Srinivas Pandruvada07/10/2026, 17:18
This presentation explores how Intel HFI can be integrated with a sched_ext to improve task placement and power-performance efficiency on hybrid Intel systems. HFI provides real-time hardware guidance on which CPUs are better suited for performance- or efficiency-oriented work, or which to avoid, while sched_ext like LAVD supplies an adaptive scheduling framework capable of using that guidance...
Go to contribution page -
Balbir Singh, Lee Trager (NVIDIA)07/10/2026, 17:36
Proposal
On modern multi-socket, multi-GPU systems, application performance is often limited not by compute availability but by poor CPU/GPU locality. Today, customers are frequently instructed to rely on strict node pinning (numactl) and disabling NUMA balancing in order to avoid costly cross-node memory accesses. While effective in some cases, this approach can be suboptimal, since it...
Go to contribution page -
07/10/2026, 18:02