perf stat: Provide support for filters
authorFrederic Weisbecker <fweisbec@gmail.com>
Mon, 14 Mar 2011 15:40:30 +0000 (16:40 +0100)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 14 Mar 2011 16:37:52 +0000 (13:37 -0300)
Now the --filter option is usable with perf stat too.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
LKML-Reference: <1300117230-8404-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-stat.c

index 21c0252..e2109f9 100644 (file)
@@ -333,6 +333,12 @@ static int run_perf_stat(int argc __used, const char **argv)
                }
        }
 
+       if (perf_evlist__set_filters(evsel_list)) {
+               error("failed to set filter with %d (%s)\n", errno,
+                       strerror(errno));
+               return -1;
+       }
+
        /*
         * Enable counters and exec the command:
         */
@@ -634,6 +640,8 @@ static const struct option options[] = {
        OPT_CALLBACK('e', "event", &evsel_list, "event",
                     "event selector. use 'perf list' to list available events",
                     parse_events),
+       OPT_CALLBACK(0, "filter", &evsel_list, "filter",
+                    "event filter", parse_filter),
        OPT_BOOLEAN('i', "no-inherit", &no_inherit,
                    "child tasks do not inherit counters"),
        OPT_INTEGER('p', "pid", &target_pid,