[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200821183859.GS3982@worktop.programming.kicks-ass.net>
Date: Fri, 21 Aug 2020 20:38:59 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: Eric Dumazet <edumazet@...gle.com>, Marco Elver <elver@...gle.com>,
LKML <linux-kernel@...r.kernel.org>,
David Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH] random32: Use rcuidle variant for tracepoint
On Fri, Aug 21, 2020 at 11:41:41AM -0400, Steven Rostedt wrote:
> On Fri, 21 Aug 2020 11:38:31 -0400
> Steven Rostedt <rostedt@...dmis.org> wrote:
>
> > > > At some point we're going to have to introduce noinstr to idle as well.
> > > > But until that time this should indeed cure things.
> > >
>
> What the above means, is that ideally we will get rid of all
> tracepoints and kasan checks from these RCU not watching locations. But
s/and kasan//
We only need to get rid of explicit tracepoints -- typically just move
them outside of the rcu_idle_enter/exit section.
> to do so, we need to move the RCU not watching as close as possible to
> where it doesn't need to be watching, and that is not as trivial of a
> task as one might think.
My recent patch series got a fair way towards that, but yes, there's
more work to be done still.
> Once we get to a minimal code path for RCU not
> to be watching, it will become "noinstr" and tracing and "debugging"
> will be disabled in these sections.
Right, noinstr is like notrace on steriods, not only does it disallow
tracing, it will also disable all the various *SAN/KCOV instrumentation.
It also has objtool based validation which ensures noinstr code doesn't
call out to regular code.
Powered by blists - more mailing lists