From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932066AbdEREQ5 (ORCPT ); Thu, 18 May 2017 00:16:57 -0400 Received: from mail-pf0-f181.google.com ([209.85.192.181]:34686 "EHLO mail-pf0-f181.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754281AbdEREQq (ORCPT ); Thu, 18 May 2017 00:16:46 -0400 From: David Carrillo-Cisneros To: linux-kernel@vger.kernel.org Cc: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Alexander Shishkin , Andi Kleen , Simon Que , Wang Nan , Jiri Olsa , He Kuang , Masami Hiramatsu , David Ahern , Namhyung Kim , Stephane Eranian , Paul Turner , David Carrillo-Cisneros Subject: [PATCH 6/7] perf tool: make show-info in perf report a tool attribute Date: Wed, 17 May 2017 21:16:01 -0700 Message-Id: <20170518041602.28689-7-davidcc@google.com> X-Mailer: git-send-email 2.13.0.303.g4ebf302169-goog In-Reply-To: <20170518041602.28689-1-davidcc@google.com> References: <20170518041602.28689-1-davidcc@google.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Although defined as exclusive of perf report and perf script, the attribute show_full_info interacts with the full_only attributes of feature_ops, that are defined for all commands. Make show_full_info a tool attribute so that any perf_event__process_* callbacks that access to feature_ops can access to it. Signed-off-by: David Carrillo-Cisneros --- tools/perf/builtin-report.c | 5 ++--- tools/perf/builtin-script.c | 6 +++--- tools/perf/util/tool.h | 1 + 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c index 22478ff2b706..08c90d65a252 100644 --- a/tools/perf/builtin-report.c +++ b/tools/perf/builtin-report.c @@ -54,7 +54,6 @@ struct report { struct perf_tool tool; struct perf_session *session; bool use_tui, use_gtk, use_stdio; - bool show_full_info; bool show_threads; bool inverted_callchain; bool mem_mode; @@ -806,7 +805,7 @@ int cmd_report(int argc, const char **argv) symbol__config_symfs), OPT_STRING('C', "cpu", &report.cpu_list, "cpu", "list of cpus to profile"), - OPT_BOOLEAN('I', "show-info", &report.show_full_info, + OPT_BOOLEAN('I', "show-info", &report.tool.show_full_info, "Display extended information about perf.data file"), OPT_BOOLEAN(0, "source", &symbol_conf.annotate_src, "Interleave source code with assembly code (default)"), @@ -1005,7 +1004,7 @@ int cmd_report(int argc, const char **argv) if ((report.header || report.header_only) && !quiet) { perf_session__fprintf_info(session, stdout, - report.show_full_info); + report.tool.show_full_info); if (report.header_only) { ret = 0; goto error; diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c index d05aec491cff..1edfa0da0a6c 100644 --- a/tools/perf/builtin-script.c +++ b/tools/perf/builtin-script.c @@ -2374,7 +2374,6 @@ int process_cpu_map_event(struct perf_tool *tool __maybe_unused, int cmd_script(int argc, const char **argv) { - bool show_full_info = false; bool header = false; bool header_only = false; bool script_started = false; @@ -2466,7 +2465,7 @@ int cmd_script(int argc, const char **argv) "Set the maximum stack depth when parsing the callchain, " "anything beyond the specified depth will be ignored. " "Default: kernel.perf_event_max_stack or " __stringify(PERF_MAX_STACK_DEPTH)), - OPT_BOOLEAN('I', "show-info", &show_full_info, + OPT_BOOLEAN('I', "show-info", &script.tool.show_full_info, "display extended information from perf.data file"), OPT_BOOLEAN('\0', "show-kernel-path", &symbol_conf.show_kernel_path, "Show the path of [kernel.kallsyms]"), @@ -2684,7 +2683,8 @@ int cmd_script(int argc, const char **argv) return -1; if (header || header_only) { - perf_session__fprintf_info(session, stdout, show_full_info); + perf_session__fprintf_info(session, stdout, + script.tool.show_full_info); if (header_only) goto out_delete; } diff --git a/tools/perf/util/tool.h b/tools/perf/util/tool.h index 829471a1c6d7..795b2be7b51f 100644 --- a/tools/perf/util/tool.h +++ b/tools/perf/util/tool.h @@ -68,6 +68,7 @@ struct perf_tool { bool ordered_events; bool ordering_requires_timestamps; bool namespace_events; + bool show_full_info; }; #endif /* __PERF_TOOL_H */ -- 2.13.0.303.g4ebf302169-goog