浏览代码

perf report: Show error message when processing sample fails

Currently when perf fails to process samples for some reason, it doesn't
show any message about the failure.  This is very inconvenient for users
especially on TUI as screen is reset after the failure.

Reported-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1448645559-31167-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Namhyung Kim 9 年之前
父节点
当前提交
25b1606be1
共有 1 个文件被更改,包括 9 次插入3 次删除
  1. 9 3
      tools/perf/builtin-report.c

+ 9 - 3
tools/perf/builtin-report.c

@@ -513,20 +513,26 @@ static int __cmd_report(struct report *rep)
 	if (rep->cpu_list) {
 	if (rep->cpu_list) {
 		ret = perf_session__cpu_bitmap(session, rep->cpu_list,
 		ret = perf_session__cpu_bitmap(session, rep->cpu_list,
 					       rep->cpu_bitmap);
 					       rep->cpu_bitmap);
-		if (ret)
+		if (ret) {
+			ui__error("failed to set cpu bitmap\n");
 			return ret;
 			return ret;
+		}
 	}
 	}
 
 
 	if (rep->show_threads)
 	if (rep->show_threads)
 		perf_read_values_init(&rep->show_threads_values);
 		perf_read_values_init(&rep->show_threads_values);
 
 
 	ret = report__setup_sample_type(rep);
 	ret = report__setup_sample_type(rep);
-	if (ret)
+	if (ret) {
+		/* report__setup_sample_type() already showed error message */
 		return ret;
 		return ret;
+	}
 
 
 	ret = perf_session__process_events(session);
 	ret = perf_session__process_events(session);
-	if (ret)
+	if (ret) {
+		ui__error("failed to process sample\n");
 		return ret;
 		return ret;
+	}
 
 
 	report__warn_kptr_restrict(rep);
 	report__warn_kptr_restrict(rep);