Re: [PATCH 2/5][RFC] tracing: move function profiler data out offunction struct

From: Steven Rostedt
Date: Wed Mar 25 2009 - 13:57:53 EST



On Wed, 25 Mar 2009, Ingo Molnar wrote:

> > The atomic_inc_return protects against NMIs, since this is the only place
> > the lock is taken.
>
> i mean, if this code executes _ni_ an NMI. Or that cannot happen? We
> trace nmis too, dont we?

Yes, it can execute in an NMI, but we have no issues there. If the lock
was taken the atomic inc is set. If an NMI comes in, it will fail the
atomic inc counter test and never try to take the lock.

But as stated below, this is just beating the dead horse, because we can
bend the lock. But it is impossible to bend the lock. What we must realize
is... "There is no lock". ;-)

-- Steve


>
> > > This all would be solved much more robustly by the function
> > > attributes hash approach i suggested in the previous mail. If
> > > percpu_alloc() is done for 20,000 functions the memory
> > > allocation overhead is no big deal.
> >
> > Later patches create a per-cpu buffers and removes the lock.
>
> ok :)
>
> Ingo
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/