Messages in this thread | | | Date | Fri, 12 Jun 2009 10:17:50 -0700 | From | Randy Dunlap <> | Subject | Re: [PATCH] perf_counters: start documenting HAVE_PERF_COUNTERS requirements |
| |
Mike Frysinger wrote: > Help out arch porters who want to support perf counters by listing some > basic requirements. > > Signed-off-by: Mike Frysinger <vapier@gentoo.org> > --- > i imagine more details would be good, but this is a starting point and > better than nothing > > init/Kconfig | 2 ++ > tools/perf/design.txt | 15 +++++++++++++++ > 2 files changed, 17 insertions(+), 0 deletions(-) > > diff --git a/init/Kconfig b/init/Kconfig > index c649657..20f85b1 100644 > --- a/init/Kconfig > +++ b/init/Kconfig > @@ -936,6 +936,8 @@ config AIO > > config HAVE_PERF_COUNTERS > bool > + help > + See end of tools/perf/design.txt
How about See "Arch requirements" in tools/perf/design.txt since it doesn't need to be at the end of the file forever.
> > menu "Performance Counters" > > 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.
-- ~Randy LPC 2009, Sept. 23-25, Portland, Oregon http://linuxplumbersconf.org/2009/
| |