]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
sched: Handle blocked-waiter migration (and return migration)
authorJohn Stultz <jstultz@google.com>
Tue, 24 Mar 2026 19:13:25 +0000 (19:13 +0000)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 3 Apr 2026 12:23:41 +0000 (14:23 +0200)
commitb049b81bdff6fc6794200a4c7d7d910e2008d57f
tree4dd1f2b1dad7a135684544b7b90c61390ad09105
parentdec9554dc036183c715d02e9cfe48986d453427a
sched: Handle blocked-waiter migration (and return migration)

Add logic to handle migrating a blocked waiter to a remote
cpu where the lock owner is runnable.

Additionally, as the blocked task may not be able to run
on the remote cpu, add logic to handle return migration once
the waiting task is given the mutex.

Because tasks may get migrated to where they cannot run, also
modify the scheduling classes to avoid sched class migrations on
mutex blocked tasks, leaving find_proxy_task() and related logic
to do the migrations and return migrations.

This was split out from the larger proxy patch, and
significantly reworked.

Credits for the original patch go to:
  Peter Zijlstra (Intel) <peterz@infradead.org>
  Juri Lelli <juri.lelli@redhat.com>
  Valentin Schneider <valentin.schneider@arm.com>
  Connor O'Brien <connoro@google.com>

Signed-off-by: John Stultz <jstultz@google.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://patch.msgid.link/20260324191337.1841376-11-jstultz@google.com
kernel/sched/core.c