On Wed, Jan 15, 2014 at 08:02:03PM -0800, Paul E. McKenney wrote:
> Hello!
> 
> The following five patches provide some crude timer-wheel latency patches.
> I understand that a more comprehensive solution is in progress, but in the
> meantime, these patches work well in cases where a given CPU has either
> zero or one timers pending, which is a common case for NO_HZ_FULL kernels.
> Note that these patches do not help in the case where a given timer wheel
> has a pair of widely separated timers, while the more comprehensive
> solution is likely to handle more gracefully.  So, on the off-chance
> that this is helpful to someone, the individual patches are as follows:
> 
> 1.    Add ->all_timers field to tbase_vec to count all timers, not
>       just the non-deferrable ones.
> 
> 2.    Avoid jiffy-at-a-time stepping when the timer wheel is empty.
> 
> 3.    Avoid jiffy-at-a-time stepping when the timer wheel transitions
>       to empty.
> 
> 4.    Avoid jiffy-at-a-time stepping after a timer is added to an
>       initially empty timer wheel.
> 
> 5.    Make internal_add_timer() update ->next_timer if ->active_timers == 0,
>       courtesy of Oleg Nesterov.

They seem like perfectly fine bandaids ;-)

Acked-by: Peter Zijlstra <[email protected]>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to