Re: [PATCH]sched/stop_task: Do not account zero delta_exec input_prev_task_stop

From: Steven Rostedt
Date: Thu Feb 14 2013 - 14:25:39 EST


On Wed, 2013-02-13 at 15:15 +0900, Namhyung Kim wrote:
> ---
> > kernel/sched/stop_task.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> > diff --git a/kernel/sched/stop_task.c b/kernel/sched/stop_task.c
> > index da5eb5b..78d0458 100644
> > --- a/kernel/sched/stop_task.c
> > +++ b/kernel/sched/stop_task.c
> > @@ -58,8 +58,8 @@ static void put_prev_task_stop(struct rq *rq, struct task_struct *prev)
> > u64 delta_exec;
> >
> > delta_exec = rq->clock_task - curr->se.exec_start;
> > - if (unlikely((s64)delta_exec < 0))
> > - delta_exec = 0;
> > + if (unlikely((s64)delta_exec <= 0))
> > + return;
>
> It seems it needs to update curr->se.exec_start then.
>

Ah, if it's less than zero, it does.

A better patch would be:

if (unlikely((s64)delta_exec <= 0)) {
curr->se.exec_start = rq->clock_task;
return;
}

Thanks!

-- Steve


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/