]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
tools/sched_ext: Handle migration-disabled tasks in scx_central
authorCheng-Yang Chou <yphbchou0911@gmail.com>
Mon, 13 Apr 2026 07:19:59 +0000 (15:19 +0800)
committerTejun Heo <tj@kernel.org>
Fri, 17 Apr 2026 18:32:07 +0000 (08:32 -1000)
commit7c7bb206e87de48144e5c7249e2f7b7352f252e2
treec6abceaf7a59398fed67a71fdc6ca8c8d6d0b18c
parent1d2c5353152d2e937a24b08261591c198996d13d
tools/sched_ext: Handle migration-disabled tasks in scx_central

When a task calls migrate_disable(), p->cpus_ptr is not updated until
migrate_disable_switch() runs during context switch, so dispatch_to_cpu()
may dequeue such a task and dispatch it to a CPU it cannot run on.

Extend the mismatch check in dispatch_to_cpu() to also test
is_migration_disabled() alongside the cpumask check, so tasks in this
window are bounced to the fallback DSQ.

Suggested-by: Andrea Righi <arighi@nvidia.com>
Suggested-by: Tejun Heo <tj@kernel.org>
Suggested-by: Kuba Piecuch <jpiecuch@google.com>
Signed-off-by: Cheng-Yang Chou <yphbchou0911@gmail.com>
Reviewed-by: Kuba Piecuch <jpiecuch@google.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
tools/sched_ext/scx_central.bpf.c