Re: [rfc patch v2] rt,nohz_full: fix nohz_full for PREEMPT_RT_FULL
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: 2015-03-16 20:24:15
Also in:
lkml
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Date: 2015-03-16 20:24:15
Also in:
lkml
* Mike Galbraith | 2015-03-13 05:53:25 [+0100]:
First of all, a task being ticked and trying to shut the tick down will fail to do so due to having just awakened ksoftirqd, so let ksoftirqd try to do that after SOFTIRQ_TIMER processing. Secondly, should the tick be shut down, we may livelock in hrtimer-cancel() because in -rt a callback may be running. Break the loop, and let tick_nohz_restart() know that the timer is busy so it can bail.
I am a bit undecided on that one. I included it in the series but did
not enable it yet.
Just so we are on the same page here: you boot your machine with
something like
"isolcpus=1-31 rcu_nocbs=1-31 nohz_full=1-31"
and pin all kernel threads to CPU0, right?
What you do is that you accept the fact that the timer-softirq is
scheduled for no reason and then you try to disable the tick from within
the timer-softirq. I assumed that it would work get the "expired timer"
somehow.
Signed-off-by: Mike Galbraith <redacted>
Sebastian