diff --git a/[refs] b/[refs] index f5e17b259c64..a17961cdc02f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 296825cbe14d4c95ee9c41ca5824f7487bfb4d9d +refs/heads/master: ef9884e6f29bbe1075204f962a00f7533bf7e8f3 diff --git a/trunk/kernel/sched_fair.c b/trunk/kernel/sched_fair.c index cf958aefac33..6c091d6e159d 100644 --- a/trunk/kernel/sched_fair.c +++ b/trunk/kernel/sched_fair.c @@ -1106,7 +1106,11 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p) } gran = sysctl_sched_wakeup_granularity; - if (unlikely(se->load.weight != NICE_0_LOAD)) + /* + * More easily preempt - nice tasks, while not making + * it harder for + nice tasks. + */ + if (unlikely(se->load.weight > NICE_0_LOAD)) gran = calc_delta_fair(gran, &se->load); if (pse->vruntime + gran < se->vruntime)