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.