diff options
Diffstat (limited to 'kernel/sched_fair.c')
-rw-r--r-- | kernel/sched_fair.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c index de4250c53a19..b43748efaa7f 100644 --- a/kernel/sched_fair.c +++ b/kernel/sched_fair.c | |||
@@ -940,7 +940,9 @@ static int wake_idle(int cpu, struct task_struct *p) | |||
940 | return cpu; | 940 | return cpu; |
941 | 941 | ||
942 | for_each_domain(cpu, sd) { | 942 | for_each_domain(cpu, sd) { |
943 | if (sd->flags & SD_WAKE_IDLE) { | 943 | if ((sd->flags & SD_WAKE_IDLE) |
944 | || ((sd->flags & SD_WAKE_IDLE_FAR) | ||
945 | && !task_hot(p, task_rq(p)->clock, sd))) { | ||
944 | cpus_and(tmp, sd->span, p->cpus_allowed); | 946 | cpus_and(tmp, sd->span, p->cpus_allowed); |
945 | for_each_cpu_mask(i, tmp) { | 947 | for_each_cpu_mask(i, tmp) { |
946 | if (idle_cpu(i)) { | 948 | if (idle_cpu(i)) { |