summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Ahern2012-07-30 04:53:03 +0200
committerArnaldo Carvalho de Melo2012-08-03 15:30:18 +0200
commit1a31fc904f1c897e4aaf7c3176e6aafa49f5d395 (patch)
tree10b7ae8bb5af31a4be085d6e1c91e6f0d7875dc8
parentperf session: Remove no longer used synthesize_sample method (diff)
downloadkernel-qcow2-linux-1a31fc904f1c897e4aaf7c3176e6aafa49f5d395.tar.gz
kernel-qcow2-linux-1a31fc904f1c897e4aaf7c3176e6aafa49f5d395.tar.xz
kernel-qcow2-linux-1a31fc904f1c897e4aaf7c3176e6aafa49f5d395.zip
perf top: Error handling for counter creation should parallel perf-record
5a7ed29 fixed up perf-record but not perf-top. Similar argument holds for it -- fallback to PMU only if it does not exist and handle invalid attributes separately. Signed-off-by: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Robert Richter <robert.richter@amd.com> Link: http://lkml.kernel.org/r/1343616783-6360-1-git-send-email-dsahern@gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r--tools/perf/builtin-top.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
index 40264eaa9f0f..34096275a7b5 100644
--- a/tools/perf/builtin-top.c
+++ b/tools/perf/builtin-top.c
@@ -943,8 +943,10 @@ try_again:
* based cpu-clock-tick sw counter, which
* is always available even if no PMU support:
*/
- if (attr->type == PERF_TYPE_HARDWARE &&
- attr->config == PERF_COUNT_HW_CPU_CYCLES) {
+ if ((err == ENOENT || err == ENXIO) &&
+ (attr->type == PERF_TYPE_HARDWARE) &&
+ (attr->config == PERF_COUNT_HW_CPU_CYCLES)) {
+
if (verbose)
ui__warning("Cycles event not supported,\n"
"trying to fall back to cpu-clock-ticks\n");