aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@kernel.org>2015-12-03 04:06:41 -0500
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-12-07 16:12:57 -0500
commite98a4cbb01e0ba1110eba5166a425b3eab9b2244 (patch)
treeccf4ab4b3b4f8b198634391471d6fcbc4e15674e
parent5cd95fc3f8d84a8bb256838fa3b6b59e9095eaa2 (diff)
perf evsel: Introduce disable() method
Adding perf_evsel__disable function to have complement for perf_evsel__enable function. Both will be used in following patch to factor perf_evlist__(enable|disable). Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/1449133606-14429-3-git-send-email-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r--tools/perf/util/evsel.c10
-rw-r--r--tools/perf/util/evsel.h1
2 files changed, 11 insertions, 0 deletions
diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
index 3a9b5068667d..47f033089349 100644
--- a/tools/perf/util/evsel.c
+++ b/tools/perf/util/evsel.c
@@ -991,6 +991,16 @@ int perf_evsel__enable(struct perf_evsel *evsel)
991 0); 991 0);
992} 992}
993 993
994int perf_evsel__disable(struct perf_evsel *evsel)
995{
996 int nthreads = thread_map__nr(evsel->threads);
997 int ncpus = cpu_map__nr(evsel->cpus);
998
999 return perf_evsel__run_ioctl(evsel, ncpus, nthreads,
1000 PERF_EVENT_IOC_DISABLE,
1001 0);
1002}
1003
994int perf_evsel__alloc_id(struct perf_evsel *evsel, int ncpus, int nthreads) 1004int perf_evsel__alloc_id(struct perf_evsel *evsel, int ncpus, int nthreads)
995{ 1005{
996 if (ncpus == 0 || nthreads == 0) 1006 if (ncpus == 0 || nthreads == 0)
diff --git a/tools/perf/util/evsel.h b/tools/perf/util/evsel.h
index a721592a3200..5ded1fc0341e 100644
--- a/tools/perf/util/evsel.h
+++ b/tools/perf/util/evsel.h
@@ -228,6 +228,7 @@ int perf_evsel__append_filter(struct perf_evsel *evsel,
228int perf_evsel__apply_filter(struct perf_evsel *evsel, int ncpus, int nthreads, 228int perf_evsel__apply_filter(struct perf_evsel *evsel, int ncpus, int nthreads,
229 const char *filter); 229 const char *filter);
230int perf_evsel__enable(struct perf_evsel *evsel); 230int perf_evsel__enable(struct perf_evsel *evsel);
231int perf_evsel__disable(struct perf_evsel *evsel);
231 232
232int perf_evsel__open_per_cpu(struct perf_evsel *evsel, 233int perf_evsel__open_per_cpu(struct perf_evsel *evsel,
233 struct cpu_map *cpus); 234 struct cpu_map *cpus);