Re: [PATCH] tracing: Annotate ftrace_graph_hash pointer with __rcu

From: Steven Rostedt
Date: Wed Feb 05 2020 - 08:19:29 EST


On Wed, 5 Feb 2020 08:14:09 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Wed, 5 Feb 2020 05:11:10 -0800
> "Paul E. McKenney" <paulmck@xxxxxxxxxx> wrote:
>
> > I strongly recommend a comment stating why disabling preemption prevents
> > ftrace_graph_hash from going away. I see the synchronize_rcu() after
> > the rcu_assign_pointer() in ftrace_graph_release(), but I don't see
> > anything that waits on CPUs that RCU is not watching.
> >
> > Of course, event tracing -makes- RCU watch when needed, but if that
> > was set up, then lockdep would not have complained.
> >
> > So what am I missing?
>
> Keep looking in your INBOX and look at the patch I asked you to ack or
> complain about ;-)


Actually, looking at the code myself, it appears to be missing the
ftrace_sync. Thus, this is a bug, and requires the ftrace sync, as
synchronize_rcu() is not strong enough here.

Patch in process!

-- Steve