public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* check_preempt_tick() check vruntime mistake?
@ 2009-12-11  4:17 XingChao Wang
  2009-12-11  7:25 ` Mike Galbraith
  0 siblings, 1 reply; 2+ messages in thread
From: XingChao Wang @ 2009-12-11  4:17 UTC (permalink / raw)
  To: kernel list; +Cc: mingo, Peter Zijlstra

Hi Ingo,peter,

When check_preempt_tick() selects next leftmost sched_entity,it
calculates delta vruntime of curr and leftmost entity, then compares
it with ideal_runtime. But ideal_runtime is real-time type, need
convert it to virtual-time ,right?

diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 37087a7..9b903d4 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -840,7 +840,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq, struct
sched_entity *curr)
                struct sched_entity *se = __pick_next_entity(cfs_rq);
                s64 delta = curr->vruntime - se->vruntime;

-               if (delta > ideal_runtime)
+               if (delta > calc_delta_fair(ideal_runtime, curr))
                        resched_task(rq_of(cfs_rq)->curr);
        }
 }

thanks
--wang xingchao

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-12-11  7:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-11  4:17 check_preempt_tick() check vruntime mistake? XingChao Wang
2009-12-11  7:25 ` Mike Galbraith

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox