Re: [RFC][PATCH 3/3] perf_counter: new output ABI - part 1

From: Paul Mackerras
Date: Sat Mar 21 2009 - 05:46:20 EST


Ingo Molnar writes:

> i think it would still be nice to allow plain old-fashioned
> poll()+read() loops ... but the logistics of that seem difficult.
> mmap() seems to fit this better - and it's probably faster as well.
> (as we have to construct the kernel-space pages anyway, so mapping
> them isnt that big of an issue)
>
> per-CPU-ness will be handled naturally via per-cpu counters.
>
> Paul, can you see any hole/quirkiness in this scheme?

The one thing I can see that we would lose is the ability to have a
signal delivered on every event. The PAPI developers want to be able
to get a signal generated every time the counter overflows, and
previously we could do that using the O_ASYNC flag, but now we'll only
get a signal every page's worth of events.

So I think we want userspace to be able to say how often we should
generate a poll event, i.e. provide a way for userspace to say "please
generate a poll event every N counter events". That would also solve
the problem of 1 page not being a valid configuration - you could set
the poll interval to the number of events that fit in half a page, for
instance.

Paul.
--
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/