diff options
author | 2016-02-25 00:13:37 +0900 | |
---|---|---|
committer | 2016-02-24 20:19:14 -0300 | |
commit | 54430101d2af260dba2d129cc9d9b7c7e60087b0 (patch) | |
tree | 3f83a3d91ead1f62f59e1a8b68900a5ed2387fd0 /tools/perf/util/hist.h | |
parent | perf hists: Add helper functions for hierarchy mode (diff) | |
download | linux-54430101d2af260dba2d129cc9d9b7c7e60087b0.tar.gz linux-54430101d2af260dba2d129cc9d9b7c7e60087b0.tar.bz2 linux-54430101d2af260dba2d129cc9d9b7c7e60087b0.zip |
perf hists: Introduce hist_entry__filter()
The hist_entry__filter() function is to filter hist entries using sort
key related info. This is needed to support hierarchy mode since each
hist entry will be associated with a hpp fmt which has a sort key. So
each entry should compare to only matching type of filters.
To do that, add the ->se_filter callback field to struct sort_entry.
This callback takes 'type' argument which determines whether it's
matching sort key or not. It returns -1 for non-matching type, 0 for
filtered entry and 1 for not filtered entries.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Pekka Enberg <penberg@kernel.org>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1456326830-30456-6-git-send-email-namhyung@kernel.org
[ 'socket' is reserved in sys/socket.h, so replace it with 'sk' ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/hist.h')
-rw-r--r-- | tools/perf/util/hist.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h index 5690906c154c..480d2eb26001 100644 --- a/tools/perf/util/hist.h +++ b/tools/perf/util/hist.h @@ -305,6 +305,8 @@ bool perf_hpp__is_trace_entry(struct perf_hpp_fmt *fmt); bool perf_hpp__is_srcline_entry(struct perf_hpp_fmt *fmt); bool perf_hpp__is_srcfile_entry(struct perf_hpp_fmt *fmt); +int hist_entry__filter(struct hist_entry *he, int type, const void *arg); + static inline bool perf_hpp__should_skip(struct perf_hpp_fmt *format, struct hists *hists) { |