Re: [PATCH RFC 0/3] Static calls

From: Josh Poimboeuf
Date: Fri Nov 09 2018 - 14:44:15 EST


On Fri, Nov 09, 2018 at 02:37:03PM -0500, Steven Rostedt wrote:
> On Fri, 9 Nov 2018 11:05:51 -0800
> Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>
> > > Not sure what Andy was talking about, but I'm currently implementing
> > > tracepoints to use this, as tracepoints use indirect calls, and are a
> > > prime candidate for static calls, as I showed in my original RFC of
> > > this feature.
> > >
> > >
> >
> > Indeed.
> >
> > Although I had assumed that tracepoints already had appropriate jump label magic.
>
> It does. But that's not the problem I was trying to solve. It's that
> tracing took a 8% noise dive with retpolines when enabled (hackbench
> slowed down by 8% with all the trace events enabled compared to all
> trace events enabled without retpoline). That is, normal users (those
> not tracinng) are not affected by trace events slowing down by
> retpoline. Those that care about performance when they are tracing, are
> affected by retpoline, quite drastically.
>
> I'm doing another test run and measurements, to see how the unoptimized
> trampolines help, followed by the trampoline case.

Are you sure you're using unoptimized? Optimized is the default on
x86-64 (with my third patch).

--
Josh