[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161121125501.768ae998@gandalf.local.home>
Date: Mon, 21 Nov 2016 12:55:01 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Andi Kleen <andi@...stfloor.org>, Jiri Olsa <jolsa@...hat.com>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...nel.org>,
Josh Triplett <josh@...htriplett.org>,
Jan Stancek <jstancek@...hat.com>
Subject: Re: [BUG] msr-trace.h:42 suspicious rcu_dereference_check() usage!
On Mon, 21 Nov 2016 18:18:53 +0100
Peter Zijlstra <peterz@...radead.org> wrote:
> Its not ftrace as such though, its RCU, ftrace simply uses RCU to avoid
> locking, as one does.
Just to be clear, as ftrace in the kernel mostly represents function
tracing, which doesn't use RCU. This is a tracepoint feature.
>
> Biggest objection would be that the rcu_irq_enter_irqson() thing does
> POPF and rcu_irq_exit_irqson() does again. So wrapping every tracepoint
> with that is quite a few cycles.
Agree. Even though this ends up being a whack-a-mole(TM) fix, I'm not
concerned enough to put a heavy weight rcu idle code in for all
tracepoints.
Although, what about a percpu flag that can be checked in the
tracepoint code to see if it should enable RCU or not?
Hmm, I wonder if "rcu_is_watching()" is light enough to have in all
tracepoints?
-- Steve
Powered by blists - more mailing lists