[GIT PULL] sched_ext: Fixes for v7.0-rc3

From: Tejun Heo

Date: Fri Mar 13 2026 - 16:28:45 EST


Hello,

The following changes since commit 0031c06807cfa8aa51a759ff8aa09e1aa48149af:

Merge tag 'cgroup-for-7.0-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup (2026-03-03 14:25:18 -0800)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext.git tags/sched_ext-for-7.0-rc3-fixes

for you to fetch changes up to 2fcfe5951eb2e8440fc5e1dd6ea977336ff83a1d:

sched_ext: Use WRITE_ONCE() for the write side of scx_enable helper pointer (2026-03-09 06:08:26 -1000)

----------------------------------------------------------------
sched_ext: Fixes for v7.0-rc3

- Fix data races flagged by KCSAN: add missing READ_ONCE()/WRITE_ONCE()
annotations for lock-free accesses to module parameters and dsq->seq.

- Fix silent truncation of upper 32 enqueue flags (SCX_ENQ_PREEMPT and
above) when passed through the int sched_class interface.

- Documentation updates: scheduling class precedence, task ownership
state machine, example scheduler descriptions, config list cleanup.

- Selftest fix for format specifier and buffer length in
file_write_long().

----------------------------------------------------------------
Andrea Righi (1):
sched_ext: Document task ownership state machine

Cheng-Yang Chou (2):
sched_ext/selftests: Fix format specifier and buffer length in file_write_long()
sched_ext: Documentation: Update sched-ext.rst

Christian Loehle (1):
sched_ext: Documentation: Mention scheduling class precedence

David Carlier (1):
sched_ext: Use READ_ONCE() for scx_slice_bypass_us in scx_bypass()

Tejun Heo (1):
sched_ext: Fix enqueue_task_scx() truncation of upper enqueue flags

zhidao su (3):
sched_ext: Use WRITE_ONCE() for the write side of dsq->seq update
sched_ext: Use READ_ONCE() for lock-free reads of module param variables
sched_ext: Use WRITE_ONCE() for the write side of scx_enable helper pointer

Documentation/scheduler/sched-ext.rst | 30 +++++++-
kernel/sched/ext.c | 22 +++---
kernel/sched/ext_internal.h | 114 ++++++++++++++++++++++++++-----
tools/testing/selftests/sched_ext/util.c | 4 +-
4 files changed, 138 insertions(+), 32 deletions(-)

Thanks.

--
tejun