[tip: sched/core] sched/core: Avoid migrating blocked_on tasks
From: tip-bot2 for John Stultz
Date: Wed Sep 02 2026 - 04:10:16 EST
The following commit has been merged into the sched/core branch of tip:
Commit-ID: 9be817f991e2eba140669d350df2a07d81f26fc8
Gitweb: https://git.kernel.org/tip/9be817f991e2eba140669d350df2a07d81f26fc8
Author: John Stultz <jstultz@xxxxxxxxxx>
AuthorDate: Fri, 07 Aug 2026 03:52:09
Committer: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
CommitterDate: Wed, 02 Sep 2026 09:37:20 +02:00
sched/core: Avoid migrating blocked_on tasks
Its not useful to migrate blocked_on tasks from other
runqueues as the proxy logic will just migrate it
back to the owner's rq. So skip blocked_on tasks here.
Signed-off-by: John Stultz <jstultz@xxxxxxxxxx>
Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
Link: https://patch.msgid.link/20260807035232.1881495-4-jstultz@xxxxxxxxxx
---
kernel/sched/core.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 7adbdcc..0f06f8d 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -6512,6 +6512,9 @@ static bool try_steal_cookie(int this, int that)
if (p == src->core_pick || p == src->curr || p == src->donor)
goto next;
+ if (task_is_blocked(p))
+ goto next;
+
if (!is_cpu_allowed(p, this))
goto next;