Re: [PATCH 1/1] rasd: Use perf_evlist__open() instead of open coded

Arnaldo Carvalho de Melo
2014-10-14T17:10:05Z

Em Tue, Oct 14, 2014 at 08:19:52AM -0600, David Ahern escreveu:
> On 10/14/14, 7:56 AM, Jiri Olsa wrote:
> >I read the rasd sources and realized we could poke this
> >from another angle.. AFAIU the work the rasd does is following:
> > - reads config file and opens configured tracepoints
> > - reads samples comming from those tracepoints and displays/writes
> > this data to the console/file
> > - is there more?
> >
> >If I'm not missing anything, this is quite usefull/common usage
> >pattern which would deserve new perf command.
> >
> >I can see the analogy with ftrace debugfs interface
> > - choose/enable tracepoints
> > - cat .../tracing/trace-pipe
> >
> >and there could be '-d' for the command to act as daemon.
>
> Yes, this parallels a new use case on my end. Right now I am running perf
> record ... | perf script. With the tracepoints and filters involved it is a
> LOT of typing - and still collects more than is needed (I don't need MMAP
> events for example, only COMM events). I am leaning towards a new perf
> sub-command but from my scheduling timehist and daemon commands I know there
> is a lot of overhead that goes with that. A perf library with a stable API
> would make this a lot easier. (AFAIK the python bindings do not currently
> support opening events, it is mainly an analysis option.)

Yeah, please take a look at this branch:

https://git.kernel.org/cgit/linux/kernel/git/acme/linux.git/log/?h=perf/hists

Trying to use the rasd.c opportunity to go over the boilerplate to
diminish it by having defaults for syswide tracing, etc.

I'm now working on moving the most minimalistic set of evsel.c/evlist.c
into tools/lib/api/perf/

- Arnaldo