From: Ingo Molnar Date: Fri, 9 Nov 2007 21:39:39 +0000 (+0100) Subject: sched: wakeup preemption fix X-Git-Tag: v2.6.24-rc3~170^2~5 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8bc6767acb3236e0345e99cf198168e60e7ae456;p=linux-2.6 sched: wakeup preemption fix wakeup preemption fix: do not make it dependent on p->prio. Preemption purely depends on ->vruntime. This improves preemption in mixed-nice-level workloads. Signed-off-by: Ingo Molnar --- diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c index fbcb426029..a3badf52bb 100644 --- a/kernel/sched_fair.c +++ b/kernel/sched_fair.c @@ -863,10 +863,8 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p) if (unlikely(se->load.weight != NICE_0_LOAD)) gran = calc_delta_fair(gran, &se->load); - if (delta > gran) { - if (p->prio < curr->prio) - resched_task(curr); - } + if (delta > gran) + resched_task(curr); } }