Re: [PATCH 03/21] rcu: Add a note about noinstr VS unsafe eqs functions

From: Paul E. McKenney
Date: Thu May 19 2022 - 12:10:28 EST


On Thu, May 19, 2022 at 05:35:27PM +0200, Frederic Weisbecker wrote:
> On Thu, May 19, 2022 at 08:26:11AM -0700, Paul E. McKenney wrote:
> > On Thu, May 19, 2022 at 04:54:38PM +0200, Peter Zijlstra wrote:
> > > On Tue, May 03, 2022 at 12:00:33PM +0200, Frederic Weisbecker wrote:
> > > > Some RCU functions enter or exit into/from RCU idle mode while using
> > > > trace-able and lockdep-aware IRQs (un-)masking. This could be easily
> > > > solved with using raw versions of local_irq_*() but we would then
> > > > lose some precious debugging informations.
> > > >
> > > > Another possible way to solve this may consist in using rude RCU-tasks
> > > > in lockdep and irqsoff tracing.
> > > >
> > > > In any case and until this get solved, those RCU functions can't get
> > > > tagged as noinstr even though they should.
> > >
> > > FWIW, this also means RCU_NONIDLE() is broken. Luckily there aren't many
> > > users left.
> >
> > More to the point, rcu_irq_enter_irqson() and rcu_irq_exit_irqson() need
> > the same help that rcu_idle_enter() and rcu_idle_exit() got earlier this
> > week [1], independent of RCU_NONIDLE().
> >
> > Unless Frederic beats me to it, I will queue something up.
>
> It's in the patchset I just posted (02/21).

Even better!!! Thank you!

Thanx, Paul