Re: [PATCH 0/6] perf trace: Add filter support

Ingo Molnar
2009-09-08T06:54:06Z

* Frederic Weisbecker <fweisbec@gmail.com> wrote:

> On Tue, Sep 08, 2009 at 09:06:49AM +0800, Li Zefan wrote:
> > >> An example:
> > >>
> > >> #./perf record -f -e irq:irq_handler_entry:irq==18:record
> > >> or
> > >> #./perf record -f -e irq:irq_handler_entry:irq==18 -R
> > >> ^C
> > >
> > > We may want to write complex filters. While looking at this patchset,
> > > that seems possible this way, but the raw line may become unreadable:
> > >
> > > perf record -f -e irq:irq_handler_entry:"irq==18 && (name == 'foo' || bar == 'blah')":record
> > >
> > > May be we should add an option to let one also set the filters seperately then
> > > we could do:
> > >
> > > perf record -f -e -R irq:irq_handler_entry --filter "irq==18 && (name == 'foo' || bar == 'blah')"
> > >
> >
> > I had the same idea. ;)
> >
> > But using this option, is it possible to specify different filters
> > for different events? like this:
> >
> > perf record -f -e -R irq:irq_handler_entry --filter "irq==18"
> > -e irq:softirq_entry --filter "vec==1"
> >
>
>
> Exactly how I was imagining it :)

Yes, that looks like a nice syntax. First the event, then the
conditions that restrict its output.

Ingo