diff options
-rw-r--r-- | kernel/sched_fair.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c index cf958aefac33..6c091d6e159d 100644 --- a/kernel/sched_fair.c +++ b/kernel/sched_fair.c | |||
@@ -1106,7 +1106,11 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p) | |||
1106 | } | 1106 | } |
1107 | 1107 | ||
1108 | gran = sysctl_sched_wakeup_granularity; | 1108 | gran = sysctl_sched_wakeup_granularity; |
1109 | if (unlikely(se->load.weight != NICE_0_LOAD)) | 1109 | /* |
1110 | * More easily preempt - nice tasks, while not making | ||
1111 | * it harder for + nice tasks. | ||
1112 | */ | ||
1113 | if (unlikely(se->load.weight > NICE_0_LOAD)) | ||
1110 | gran = calc_delta_fair(gran, &se->load); | 1114 | gran = calc_delta_fair(gran, &se->load); |
1111 | 1115 | ||
1112 | if (pse->vruntime + gran < se->vruntime) | 1116 | if (pse->vruntime + gran < se->vruntime) |