On Thu, Mar 11, 2010 at 01:46:08PM +0100, Ingo Molnar wrote:
* Corey Ashford<cjashfor@xxxxxxxxxxxxxxxxxx> wrote:
On 3/3/2010 6:30 PM, Corey Ashford wrote:For your review, this patch adds support for arch-dependent symbolic
event names to the "perf stat" tool, and could be expanded to other
"perf *" commands fairly easily, I suspect.
I'm quite much against stop-gap measures like this - they tend to become
tomorrow's impossible-to-remove quirk.
If you want extensible events you can already do it by providing an ftrace
tracepoint event via TRACE_EVENT. They are easy to add and ad-hoc, and are
supported throughout by perf.
If I've understood correctly what Corey is doing, I think you're
missing the point. The idea, I thought, was to provide a way to be
able to use symbolic names for raw hardware events rather than just
numbers.
Now as to whether an external .so is the best way to provide the
processor-specific mapping of names to raw events, I'm not sure.
If the kernel can provide that mapping via procfs, sysfs or eventfs,
that would be an alternative, but it does mean the kernel has those
tables in unswappable memory (and potentially the tables for all the
processors that the kernel supports), which seems unnecessary. Or
they can just be added to the perf source code.