From: Tejun Heo <tj@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Vernet <void@manifault.com>,
Andrea Righi <arighi@nvidia.com>,
Changwoo Min <changwoo@igalia.com>,
Emil Tsalapatis <emil@etsalapatis.com>,
linux-kernel@vger.kernel.org
Subject: [GIT PULL] sched_ext: Fixes for v7.0-rc2
Date: Tue, 03 Mar 2026 11:35:27 -1000 [thread overview]
Message-ID: <d0b712e399675089c5bd89a09dc1d27c@kernel.org> (raw)
Hello,
The following changes since commit 640c9dc72f21f325700a4b0f839ad568ff21c697:
tools/sched_ext: fix getopt not re-parsed on restart (2026-02-20 17:17:38 -1000)
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-rc2-fixes
for you to fetch changes up to b06ccbabe2506fd70b9167a644978b049150224a:
sched_ext: Fix starvation of scx_enable() under fair-class saturation (2026-03-03 11:10:40 -1000)
Note: There's a merge conflict in kernel/sched/ext_idle.c between
189f164e573e ("Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL
uses") from the slab tree and 2a064262eb37 ("sched_ext: Fix
out-of-bounds access in scx_idle_init_masks()") from this pull. The
former converts kcalloc() to kzalloc_objs() and the latter changes
num_possible_nodes() to nr_node_ids. The resolution is to take both:
/* before (master) */
scx_idle_node_masks = kzalloc_objs(*scx_idle_node_masks,
num_possible_nodes());
/* after (resolved) */
scx_idle_node_masks = kzalloc_objs(*scx_idle_node_masks,
nr_node_ids);
A test-merge branch is available at:
https://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext.git test-merge-for-7.0-rc2-fixes
----------------------------------------------------------------
sched_ext: Fixes for v7.0-rc2
- Fix starvation of scx_enable() under fair-class saturation by
offloading the enable path to an RT kthread.
- Fix out-of-bounds access in idle mask initialization on systems with
non-contiguous NUMA node IDs.
- Fix a preemption window during scheduler exit and a refcount underflow
in cgroup init error path.
- Fix SCX_EFLAG_INITIALIZED being a no-op flag.
- Add READ_ONCE() annotations for KCSAN-clean lockless accesses and
replace naked scx_root dereferences with container_of() in kobject
callbacks.
- Tooling and selftest fixes: compilation issues with clang 17,
strtoul() misuse, unused options cleanup, and Kconfig sync.
----------------------------------------------------------------
Cheng-Yang Chou (8):
selftests/sched_ext: Abort test loop on signal
selftests/sched_ext: Fix unused-result warning for read()
tools/sched_ext: scx_central: Remove unused '-p' option
tools/sched_ext: scx_sdt: Remove unused '-f' option
selftests/sched_ext: Remove duplicated unistd.h include in rt_stall.c
tools/sched_ext: Sync README.md Kconfig with upstream scx
tools/sched_ext: Add Kconfig to sync with upstream
sched_ext: Remove redundant css_put() in scx_cgroup_init()
David Carlier (3):
sched_ext: Fix out-of-bounds access in scx_idle_init_masks()
sched_ext: Fix SCX_EFLAG_INITIALIZED being a no-op flag
tools/sched_ext: fix strtoul() misuse in scx_hotplug_seq()
Tejun Heo (2):
sched_ext: Disable preemption between scx_claim_exit() and kicking helper work
sched_ext: Fix starvation of scx_enable() under fair-class saturation
Zhao Mengmeng (3):
tools/sched_ext: Add -fms-extensions to bpf build flags
selftests/sched_ext: Add -fms-extensions to bpf build flags
selftests/sched_ext: Fix peek_dsq.bpf.c compile error for clang 17
zhidao su (3):
sched_ext: Use READ_ONCE() for the read side of dsq->nr update
sched_ext: Replace naked scx_root dereferences in kobject callbacks
sched_ext: Use READ_ONCE() for plain reads of scx_watchdog_timeout
kernel/sched/ext.c | 101 +++++++++++++++++----
kernel/sched/ext_idle.c | 4 +-
kernel/sched/ext_internal.h | 2 +-
tools/sched_ext/Kconfig | 61 +++++++++++++
tools/sched_ext/Makefile | 2 +
tools/sched_ext/README.md | 6 --
tools/sched_ext/include/scx/compat.h | 7 +-
tools/sched_ext/scx_central.c | 2 +-
tools/sched_ext/scx_sdt.c | 2 +-
tools/testing/selftests/sched_ext/Makefile | 2 +
.../selftests/sched_ext/init_enable_count.c | 3 +-
tools/testing/selftests/sched_ext/peek_dsq.bpf.c | 4 +-
tools/testing/selftests/sched_ext/rt_stall.c | 1 -
tools/testing/selftests/sched_ext/runner.c | 3 +
14 files changed, 165 insertions(+), 35 deletions(-)
create mode 100644 tools/sched_ext/Kconfig
Thanks.
--
tejun
next reply other threads:[~2026-03-03 21:35 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-03 21:35 Tejun Heo [this message]
2026-03-03 22:31 ` [GIT PULL] sched_ext: Fixes for v7.0-rc2 pr-tracker-bot
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=d0b712e399675089c5bd89a09dc1d27c@kernel.org \
--to=tj@kernel.org \
--cc=arighi@nvidia.com \
--cc=changwoo@igalia.com \
--cc=emil@etsalapatis.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=void@manifault.com \
/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.