Re: [PATCH] Revert "timers: Don't wake ktimersoftd on every tick"

From: Thomas Gleixner
Date: Fri May 26 2017 - 15:49:40 EST


On Fri, 26 May 2017, Haris Okanovic wrote:

> Anna-Maria,
>
> Look-ahead is implemented by tick_find_expired() and expiry by __run_timers(),
> both of which hold timer_base::lock (raw spin lock) while running. Those two
> routines shouldn't be able to run simultaneously on the same timer_base. Are
> you sure the race isn't in another code path?

It happens when softirq runs and drops the spinlock to call the timer
function. And from there stuff goes down the drain.

Anna-Maria will send you the test case on monday.

Thanks,

tglx