lkml.org 
[lkml]   [2009]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH]kernel/sched_fair.c: task_new_fair() have call update_curr() twice
From
Date
On Wed, 2009-04-08 at 10:10 +0800, figo.zhang wrote:
> The task_new_fair() will call update_curr() twice, one is in
> task_new_fair(), and other one in
> enqueue_task_fair()->enqueue_entity(), they do the same, so it
> should be need one time.
>
> Signed-off-by: figo.zhang <figo.zhang@kolorific.com>
>
>
> diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
> index 3816f21..d5913bb 100644
> --- a/kernel/sched_fair.c
> +++ b/kernel/sched_fair.c
> @@ -1713,7 +1713,7 @@ static void task_new_fair(struct rq *rq, struct
> task_struct *p)
> sched_info_queued(p);
>
> - update_curr(cfs_rq);
> +
> place_entity(cfs_rq, se, 1);
>
> /* 'curr' will be NULL if the child belongs to a different
> group */

Except that update_curr() changes ->vruntime, and place_entity() uses
->vruntime. Therefore the above is not a NOP.




\
 
 \ /
  Last update: 2009-04-08 11:55    [from the cache]
©2003-2011 Jasper Spaans