Messages in this thread | | | Date | Sun, 14 Jun 2009 18:41:11 +0900 | From | Paul Mundt <> | Subject | Re: [PATCH] perf_counters: start documenting HAVE_PERF_COUNTERS requirements |
| |
On Fri, Jun 12, 2009 at 01:27:12PM -0400, Mike Frysinger wrote: > diff --git a/tools/perf/design.txt b/tools/perf/design.txt > index 860e116..f71e0d2 100644 > --- a/tools/perf/design.txt > +++ b/tools/perf/design.txt > @@ -440,3 +440,18 @@ by this process or by another, and doesn't affect any counters that > this process has created on other processes. It only enables or > disables the group leaders, not any other members in the groups. > > + > +Arch requirements > +----------------- > + > +If your architecture does not have hardware performance metrics, you can > +still use the generic software counters based on hrtimers for sampling. > + > +So to start with, in order to add HAVE_PERF_COUNTERS to your Kconfig, you > +will need at least this: > + - asm/perf_counter.h - a basic stub will suffice at first > + - support for atomic64 types (and associated helper functions) > + - set_perf_counter_pending() implemented > + > +If your architecture does have hardware capabilities, you can override the > +weak stub hw_perf_counter_init() to register hardware counters.
It would be nice to see this in arch/Kconfig instead, as that tends to provide a centralized checklist for new features, especially when they are non-trivial. At least I found the arch/Kconfig bits very helpful for things like tracehook support, without having to grovel around Documentation for verbose design documents that I otherwise couldn't care less about.
| |