Merge "sched/walt: Prevent active migration of pipeline task during newidle balance"

This commit is contained in:
QCTECMDR Service 2024-06-27 00:59:09 -07:00 committed by Gerrit - the friendly Code Review server
commit 8cd410a570

View File

@ -287,6 +287,17 @@ static inline bool need_active_lb(struct task_struct *p, int dst_cpu,
if (task_reject_partialhalt_cpu(p, dst_cpu))
return false;
/*
* If the sleeping task on the dst_cpu and the task for which we are
* doing active load balance, are pipeline tasks then don't do active
* load balance. If we allow this, the sleeping task might wakeup
* again on dst_cpu before the migration of actively pulled task. This
* will result in two pipeline tasks on the same cpu
*/
if (walt_pipeline_low_latency_task(p) &&
walt_pipeline_low_latency_task(cpu_rq(dst_cpu)->curr))
return false;
return true;
}