[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220420192223.GK4285@paulmck-ThinkPad-P17-Gen-1>
Date: Wed, 20 Apr 2022 12:22:23 -0700
From: "Paul E. McKenney" <paulmck@...nel.org>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: rcu@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel-team@...com
Subject: Re: [PATCH rcu 1/2] docs: Add documentation for rude and trace RCU
flavors
On Wed, Apr 20, 2022 at 02:43:09PM -0400, Steven Rostedt wrote:
> On Wed, 20 Apr 2022 11:37:26 -0700
> "Paul E. McKenney" <paulmck@...nel.org> wrote:
>
> > The original purpose of RCU Tasks Rude was to deal with the idle tasks,
> > given that RCU Tasks dealt only with the non-idle tasks.
> >
> > Or is there a trick that I missed?
>
> It use to be that ftrace trampolines could be called from all sorts of
> locations until Peter introduced the "noinstr" annotation that causes
> objtool to fail to build when tracing happens there. If that prevents
> ftrace from happening in that idle case where RCU tasks can not handle it,
> then it may be that we can simply switch ftrace to the RCU tasks and get
> rid of rude. ?
The last time that I asked Peter about this, he sounded less confident
than I would like, but...
Once sufficient confidence is present, RCU Tasks could pay attention to
idle tasks, and declare a quiescent state for that idle task if RCU is
not currently watching its corresponding CPU.
This would get rid of all of the RCU Tasks Rude use cases that I know of.
The ones that I don't know of? Who knows? ;-)
Thanx, Paul
Powered by blists - more mailing lists