sched/walt: do not allow migration to halted CPU

rebalance_domains will call load_balance, and ultimately will
call detach_tasks, walt_migrated_queued_task, and set_task_cpu, choosing
a cpu that is halted.

can_migrate_task will be used to validate whether a particular migration
is allowed to happen. Reject migrations for tasks that are being
migrated to a halted cpu.

Change-Id: I0b2f5d3857a2b1db9a2fa5017d5238f143a85ed9
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
This commit is contained in:
Stephen Dickey 2021-11-12 16:27:07 -08:00 committed by Rishabh Bhatnagar
parent ba4ec7d486
commit 80676560d2

View File

@ -250,6 +250,10 @@ static inline bool _walt_can_migrate_task(struct task_struct *p, int dst_cpu,
if (wrq->push_task == p)
return false;
/* Don't detach task if dest cpu is halted */
if (cpu_halted(dst_cpu))
return false;
return true;
}