lkml.org 
[lkml]   [2010]   [Feb]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 10/11] tracing/perf: Fix lock events recursions in the fast path
From
Date
On Fri, 2010-02-05 at 13:12 +0100, Peter Zijlstra wrote:
> On Fri, 2010-02-05 at 13:10 +0100, Peter Zijlstra wrote:
> > On Fri, 2010-02-05 at 11:49 +0100, Ingo Molnar wrote:
> > >
> > > > That said, I'm not at all happy about removing lockdep annotations to make
> > > > the tracer faster, that's really counter productive.
> > >
> > > Are there no dynamic techniques that could be used here?
> > >
> > > Lockdep obviously wants maximum instrumentation coverage - performance be
> > > damned.
> > >
> > > Lock profiling/tracing/visualization wants the minimum subset of events it is
> > > interested in - everything else is unnecessary overhead.
> >
> > Well, they could start by moving the tracepoint inside the lockdep
> > recursion check.
>
> IIRC the reason its now outside is that you'd loose tracepoint on
> lockdep_off() usage, but having the tracer folks help on removing any
> such usage is of course a good thing.
>
> The usage thereof in nmi_enter() doesn't seem like a problem, since
> you're not supposed to be using locks from nmi context anyway, more so,
> I'd not be adverse to putting BUG_ON(in_nmi()) in every lockdep hook.

Another nasty side effect is that it (lockdep recursion) isn't IRQ aware
in that we don't do any tracking for IRQ's that hit while we're doing
lockdep. We can fix that using a recursion context like we did for perf,
that would actually improve lockdep itself too.





\
 
 \ /
  Last update: 2010-02-05 14:05    [W:0.075 / U:2.972 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site