Re: [RFC,PATCH 1/2] cputimers/proc: do_task_stat()->task_times()can race with getrusage()

From: Stanislaw Gruszka
Date: Fri Mar 26 2010 - 03:40:05 EST


On Fri, Mar 26, 2010 at 09:23:44AM +0530, Balbir Singh wrote:
> * Oleg Nesterov <oleg@xxxxxxxxxx> [2010-03-24 21:45:50]:
>
> > do_task_stat()->task_times() can race with getrusage(), they both can
> > try to update task->prev_Xtime at the same time.
> >
> > Remove this bit of d180c5bc "sched: Introduce task_times() to replace
> > task_{u,s}time()".
>
> One of the reasons for adding this accuracy was to avoid sampling
> based noise and errors that occur with utime and stime.
>
> As long as there is no preemption during the assignment, I think we
> should be OK.
>
> I see two options
>
> 1. Disable preemption around assignment
That one sounds very good.

> 2. Remove task_times() from getrusage()
We want more accurate and what more important monotonic values
in getrusage.

Stanislaw
--
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/