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>,
David Dai <david.dai@linux.dev>,
sched-ext@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: [GIT PULL] sched_ext: Fixes for v7.3-rc6
Date: Tue, 06 Oct 2026 07:35:47 -1000 [thread overview]
Message-ID: <afa1dcf110d0a6c081e1232c6ae2c989@kernel.org> (raw)
Hello,
The following changes since commit 94480606a677deb68d5622cf0ded88626514b3f2:
sched_ext: Add a size argument to scx_bpf_cid_topo() so struct scx_cid_topo can grow (2026-09-26 10:09:12 -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.3-rc6-fixes
for you to fetch changes up to e6ac89b8b1c12e9104df45a14a26e2dfa96ded06:
sched_ext: Generate qseq from a per-task counter (2026-10-03 13:23:31 -1000)
----------------------------------------------------------------
sched_ext: Fixes for v7.3-rc6
- Taking a CPU offline could hang, or stall until the watchdog ejected the
BPF scheduler, when tasks on the dying CPU were still held by the
scheduler or sitting on a user dispatch queue. Re-enqueue them onto the
local queue when the runqueue goes offline so that the CPU pushes them off
like the other sched classes.
- The sequence number guarding against stale dispatches was per runqueue, so
a task re-enqueued on another CPU could get the same number and a dispatch
meant for its earlier instance was applied to the new one. Use a per-task
counter.
- A task dispatched to another CPU's local queue got its ops.dequeue() only
when picked to run and flagged as a core-sched pick. Call it at insertion
like for same-CPU dispatches.
----------------------------------------------------------------
Kuba Piecuch (3):
sched_ext: Call ops.dequeue() when a task arrives on a remote local DSQ
selftests/sched_ext: Add a test for ops.dequeue() on remote local DSQ moves
sched_ext: Generate qseq from a per-task counter
Tejun Heo (1):
sched_ext: Fix CPU hotplug hang when a dying CPU's tasks sit in the BPF scheduler
include/linux/sched/ext.h | 1 +
kernel/sched/ext/ext.c | 46 +++-
kernel/sched/ext/inlines.h | 8 +-
kernel/sched/ext/internal.h | 5 +
kernel/sched/ext/sub.c | 4 -
kernel/sched/sched.h | 6 +-
tools/testing/selftests/sched_ext/Makefile | 1 +
.../selftests/sched_ext/dequeue_remote.bpf.c | 270 +++++++++++++++++++++
tools/testing/selftests/sched_ext/dequeue_remote.c | 204 ++++++++++++++++
9 files changed, 528 insertions(+), 17 deletions(-)
create mode 100644 tools/testing/selftests/sched_ext/dequeue_remote.bpf.c
create mode 100644 tools/testing/selftests/sched_ext/dequeue_remote.c
--
tejun
next reply other threads:[~2026-10-06 17:35 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-06 17:35 Tejun Heo [this message]
2026-10-07 0:45 ` [GIT PULL] sched_ext: Fixes for v7.3-rc6 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=afa1dcf110d0a6c081e1232c6ae2c989@kernel.org \
--to=tj@kernel.org \
--cc=arighi@nvidia.com \
--cc=changwoo@igalia.com \
--cc=david.dai@linux.dev \
--cc=emil@etsalapatis.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sched-ext@lists.linux.dev \
--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.