aboutsummaryrefslogtreecommitdiff
path: root/kernel/sched/fair.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sched/fair.c')
-rw-r--r--kernel/sched/fair.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index e9dd53cedc7..970026bda81 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5587,8 +5587,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 */