On 08/24/2018 01:41 PM, Frederic Weisbecker wrote:
On Fri, Aug 24, 2018 at 11:10:44AM -0500, Grygorii Strashko wrote:
Yes. i do not see local_softirq_pending messages any more
But one question, just to clarify, after patch "nohz: Fix missing tick reprog while interrupting inline timer softirq" the tick_nohz_irq_exit() will be called few times in case of nested interrupts (min 2): gic_handle_irq |- irq_exit |- preempt_count_sub(HARDIRQ_OFFSET); |-__do_softirq
<irqs enabled> |- gic_handle_irq() |- irq_exit() |- tick_irq_exit() if (!in_irq()) tick_nohz_irq_exit(); <-- [1] |- tick_irq_exit() if (!in_irq()) tick_nohz_irq_exit(); <-- [2]
Is it correct? in 4.14 tick_nohz_irq_exit() is much more complex then in LKML now, and this is hot path.
That's correct and it's indeed more costly in 4.14 as then the tick is going to be programmed twice.
Sry, that disturbing you all, but what are the conclusion here for 4.14.y? - take Thomas's patch https://lore.kernel.org/patchwork/patch/969521/#1162900 - revert commit 2d898915ccf4838c04531c51a598469e921a5eb5