perf evlist: Add (reset,set)_sample_bit methods
tip-bot for Arnaldo Carvalho de Melo
merge botCommit-ID: 22c8a376b55f327f7a25a318e87ba9202ba284bf Gitweb: http://git.kernel.org/tip/22c8a376b55f327f7a25a318e87ba9202ba284bf Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Mon, 11 Apr 2016 18:37:45 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Mon, 11 Apr 2016 22:18:21 -0300
perf evlist: Add (reset,set)_sample_bit methods
For fiddling with sample_type fields in all evsels in an evlist.
Cc Adrian Hunter <[email protected]>
Cc David Ahern <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Milian Wolff <[email protected]>
Cc Namhyung Kim <[email protected]>
Cc Wang Nan <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/perf/util/evlist.c | 18 ++++++++++++++++++ tools/perf/util/evlist.h | 11 +++++++++++ 2 files changed, 29 insertions(+)
tools/perf/util/evlist.c +18 -0
@@ -1192,6 +1192,24 @@ void perf_evlist__set_maps(struct perf_evlist *evlist, struct cpu_map *cpus,perf_evlist__propagate_maps (evlist); } +void __perf_evlist__set_sample_bit (struct perf_evlist *evlist, +enum perf_event_sample_format bit) +{ +struct perf_evsel *evsel; + +evlist__for_each (evlist, evsel) +__perf_evsel__set_sample_bit (evsel, bit); +} + +void __perf_evlist__reset_sample_bit (struct perf_evlist *evlist, +enum perf_event_sample_format bit) +{ +struct perf_evsel *evsel; + +evlist__for_each (evlist, evsel) +__perf_evsel__reset_sample_bit (evsel, bit); +} +int perf_evlist__apply_filters (struct perf_evlist *evlist,struct perf_evsel **err_evsel) {struct perf_evsel *evsel;
tools/perf/util/evlist.h +11 -0
@@ -87,6 +87,17 @@ int perf_evlist__add_dummy(struct perf_evlist *evlist);int perf_evlist__add_newtp (struct perf_evlist *evlist,const char *sys,const char *name,void *handler); +void __perf_evlist__set_sample_bit (struct perf_evlist *evlist, +enum perf_event_sample_format bit); +void __perf_evlist__reset_sample_bit (struct perf_evlist *evlist, +enum perf_event_sample_format bit); + +#define perf_evlist__set_sample_bit (evlist, bit) \ + __perf_evlist__set_sample_bit(evlist, PERF_SAMPLE_##bit) + +#define perf_evlist__reset_sample_bit (evlist, bit) \ + __perf_evlist__reset_sample_bit(evlist, PERF_SAMPLE_##bit) +int perf_evlist__set_filter (struct perf_evlist *evlist,const char *filter);int perf_evlist__set_filter_pid (struct perf_evlist *evlist,pid_t pid);int perf_evlist__set_filter_pids (struct perf_evlist *evlist,size_t npids,pid_t *pids);