Re: [BUG] msr-trace.h:42 suspicious rcu_dereference_check() usage!

From: Steven Rostedt
Date: Wed Nov 23 2016 - 21:07:25 EST


On Mon, 21 Nov 2016 10:37:00 -0800
Andi Kleen <andi@xxxxxxxxxxxxxx> wrote:

> > It tries to be optimized. I "unoptimized" it a while back to pull out
> > all the inlines that were done in the tracepoint itself. That is, the
> > trace_<tracepoint>() function is inlined in the code itself. By
> > breaking that up a bit, I was able to save a bunch of text because the
> > tracepoints were bloating the kernel tremendously.
>
> Just adding a few inlines won't fix the gigantic bloat that is currently
> there. See the PT trace I posted earlier (it was even truncated, it's
> actually worse). Just a single enabled trace point took about a us.
>
> POPF can cause some serializion but it won't be more than a few tens
> of cycles, which would be a few percent at best.
>
> Here is it again untruncated:
>
> http://halobates.de/tracepoint-trace
>

I took a look at this and forced some more functions to be inlined. I
did a little tweaking here and there. Could you pull my tree and see if
things are better? I don't currently have the hardware to run this
myself.

git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git

branch: ftrace/core


Thanks!

-- Steve