Re: [RFC PATCH v2 3/3] sched: introduce synchronized idle injection

Jacob Pan
2015-11-10T16:51:55Z

On Tue, 10 Nov 2015 17:36:46 +0100
Peter Zijlstra <peterz@infradead.org> wrote:

> > The downside is that we need to restart the timers every time if
> > user were to change injection parameters, i.e. duration and percent.
> > Or do locking which might be too expensive. In the previous
> > approach, it will naturally catch up the parameter change.
>
> Why? the timer will fire and observe the new value for reprogramming
> the next period. All you need to do is to ensure whole values are
> written/read -- ie. avoid load/store tearing.
Different per CPU timer may intercept parameter changes at slightly
different time, so there is a race condition such that some CPUs may
catch the period change later by one period, which results in a correct
period change but at a different time, i.e. out of sync.

Jacob