Re: [PATCH v3 tip/core/timers 0/5] Crude timer-wheel latency hacks

From: Steven Rostedt
Date: Thu Jan 16 2014 - 09:44:28 EST


On Wed, 15 Jan 2014 20:02:03 -0800
"Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx> 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.
>

Although I think the "(void)" is ugly and uncalled for (there's lots of
functions that return a value in the kernel that don't have that). But,
it's not up to me to argue this.

For all 5 patches,

Reviewed-by: Steven Rostedt <rostedt@xxxxxxxxxxx>

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