Hello! The following three 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. 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. Differences from v1: o Fix an embarrassing bug located by Oleg Nesterov where the timer wheel could be judged to be empty even if it contained deferrable timers. Thanx, Paul ------------------------------------------------------------------------ b/kernel/timer.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/