sched: Only down migrate low priority tasks if allowed by affinity mask

Adds an extra check intersection of the task affinity mask and the slower
hmp_domain cpumask before down migrating low priority tasks.

Signed-off-by: Morten Rasmussen <morten.rasmussen@arm.com>
This commit is contained in:
Morten Rasmussen
2012-10-12 15:25:02 +01:00
committed by Jon Medhurst
parent 362036513b
commit eeebbf595c

View File

@@ -5918,8 +5918,11 @@ static unsigned int hmp_down_migration(int cpu, struct sched_entity *se)
#ifdef CONFIG_SCHED_HMP_PRIO_FILTER
/* Filter by task priority */
if (p->prio >= hmp_up_prio)
if ((p->prio >= hmp_up_prio) &&
cpumask_intersects(&hmp_slower_domain(cpu)->cpus,
tsk_cpus_allowed(p))) {
return 1;
}
#endif
/* Let the task load settle before doing another down migration */