Re: [PATCH] perf_counter: allow and require one-page mmap on counting counters

Peter Zijlstra
2009-03-31T19:15:45Z

On Wed, 2009-03-25 at 20:42 +1100, Paul Mackerras wrote:
>
> And here's something else that is semi-related: the PAPI guys want a
> kind of counter that counts until it overflows, and then sends a
> signal to the process and disables itself (and the whole group it's
> in).

I tried doing this this evening, and its remarkably hard. Disabling a
counter relies on reading the time, and taking ctx->lock and such.
Things that are impossible to do in NMI context.

Furthermore, some of the software counters (those that use hrtimers)
wait for the completion of the handler (hrtimer_cancel) which would
deadlock when tried from the handler.

Some of these things could be hacked around, others less so, but all in
all it looked remarkably hard for something that sounds so simple.