Re: [PATCH] x86/paravirt: Add missing noinstr to arch_local*() helpers

peterz
2020-08-12T08:57:51Z

On Wed, Aug 12, 2020 at 10:18:32AM +0200, peterz@infradead.org wrote:
> > trace_hardirqs_restore+0x59/0x80 kernel/trace/trace_preemptirq.c:106
> > rcu_irq_enter_irqson+0x43/0x70 kernel/rcu/tree.c:1074
> > trace_irq_enable_rcuidle+0x87/0x120 include/trace/events/preemptirq.h:40
> > trace_hardirqs_restore+0x59/0x80 kernel/trace/trace_preemptirq.c:106
> > rcu_irq_enter_irqson+0x43/0x70 kernel/rcu/tree.c:1074
> > trace_irq_enable_rcuidle+0x87/0x120 include/trace/events/preemptirq.h:40
> > trace_hardirqs_restore+0x59/0x80 kernel/trace/trace_preemptirq.c:106
> > rcu_irq_enter_irqson+0x43/0x70 kernel/rcu/tree.c:1074
> > trace_irq_enable_rcuidle+0x87/0x120 include/trace/events/preemptirq.h:40
> > trace_hardirqs_restore+0x59/0x80 kernel/trace/trace_preemptirq.c:106
> > rcu_irq_enter_irqson+0x43/0x70 kernel/rcu/tree.c:1074
> >
> > <... repeated many many times ...>
> >
> > trace_irq_enable_rcuidle+0x87/0x120 include/trace/events/preemptirq.h:40
> > trace_hardirqs_restore+0x59/0x80 kernel/trace/trace_preemptirq.c:106
> > rcu_irq_enter_irqson+0x43/0x70 kernel/rcu/tree.c:1074
> > Lost 500 message(s)!
> > BUG: stack guard page was hit at 00000000cab483ba (stack is 00000000b1442365..00000000c26f9ad3)
> > BUG: stack guard page was hit at 00000000318ff8d8 (stack is 00000000fd87d656..0000000058100136)
> > ---[ end trace 4157e0bb4a65941a ]---
>
> Wheee... recursion! Let me try and see if I can make something of that.

All that's needed is enabling the preemptirq tracepoints. Lemme go fix.