lkml.org 
[lkml]   [2017]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] perf/core: generate overflow signal when samples are dropped (WAS: Re: [REGRESSION] perf/core: PMU interrupts dropped if we entered the kernel in the "skid" region)

* Kyle Huey <me@kylehuey.com> wrote:

> On Wed, Jul 5, 2017 at 10:07 PM, Robert O'Callahan <robert@ocallahan.org> wrote:
> > On Tue, Jul 4, 2017 at 3:21 AM, Mark Rutland <mark.rutland@arm.com> wrote:
> >> Should any of those be moved into the "should be dropped" pile?
> >
> > Why not be conservative and clear every sample you're not sure about?
> >
> > We'd appreciate a fix sooner rather than later here, since rr is
> > currently broken on every stable Linux kernel and our attempts to
> > implement a workaround have failed.
> >
> > (We have separate "interrupt" and "measure" counters, and I thought we
> > might work around this regression by programming the "interrupt"
> > counter to count kernel events as well as user events (interrupting
> > early is OK), but that caused our (completely separate) "measure"
> > counter to report off-by-one results (!), which seems to be a
> > different bug present on a range of older kernels.)
>
> This seems to have stalled out here unfortunately.
>
> Can we get a consensus (from ingo or peterz?) on Mark's question? Or,
> alternatively, can we move the patch at the top of this thread forward
> on the stable branches until we do reach an answer to that question?
>
> We've abandoned hope of working around this problem in rr and are
> currently broken for all of our users with an up-to-date kernel, so
> the situation for us is rather dire at the moment I'm afraid.

Sorry about that - I've queued up a revert for the original commit and will send
the fix to Linus later today. I've added a -stable tag as well so it can be
forwarded to Greg the moment it hits upstream.

We should do the original fix as well, but in a version that does not skip the
sample but zeroes out the RIP and registers (or sets them all to -1LL) - and also
covers other possible places where skid-RIP is exposed, such as LBR.

Thanks,

Ingo

\
 
 \ /
  Last update: 2017-07-11 11:04    [W:0.129 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site