Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1258267

[PATCH 01/12] perf tools: Improve ambiguous option help message

From Arnaldo Carvalho de Melo <acme@kernel.org>
Newsgroups linux.kernel
Subject [PATCH 01/12] perf tools: Improve ambiguous option help message
Date 2015-10-28 16:40 +0100
Message-ID <qoAZu-4r5-79@gated-at.bofh.it> (permalink)
References <qoAZr-4r5-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Namhyung Kim <namhyung@kernel.org>

Currently if an option name is ambiguous it only prints first two
matched option names but no help.  It'd be better it could show all
possible names and help messages too.

Before:
  $ perf report --show
    Error: Ambiguous option: show (could be --show-total-period or
                                            --show-ref-call-graph)
   Usage: perf report [<options>]

After:
  $ perf report --show
    Error: Ambiguous option: show (could be --show-total-period or
                                            --show-ref-call-graph)
   Usage: perf report [<options>]

      -n, --show-nr-samples
                              Show a column with the number of samples
          --showcpuutilization
                              Show sample percentage for different cpu modes
      -I, --show-info         Display extended information about perf.data file
          --show-total-period
                              Show a column with the sum of periods
          --show-ref-call-graph
                              Show callgraph from reference event

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Ingo Molnar <mingo@kernel.org>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
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/1445701767-12731-1-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/parse-options.c | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

diff --git a/tools/perf/util/parse-options.c b/tools/perf/util/parse-options.c
index 22c2806bda98..b8d98229a8af 100644
--- a/tools/perf/util/parse-options.c
+++ b/tools/perf/util/parse-options.c
@@ -770,24 +770,23 @@ int parse_options_usage(const char * const *usagestr,
 opt:
 	for (  ; opts->type != OPTION_END; opts++) {
 		if (short_opt) {
-			if (opts->short_name == *optstr)
+			if (opts->short_name == *optstr) {
+				print_option_help(opts, 0);
 				break;
+			}
 			continue;
 		}
 
 		if (opts->long_name == NULL)
 			continue;
 
-		if (!prefixcmp(optstr, opts->long_name))
-			break;
-		if (!prefixcmp(optstr, "no-") &&
-		    !prefixcmp(optstr + 3, opts->long_name))
-			break;
+		if (!prefixcmp(opts->long_name, optstr))
+			print_option_help(opts, 0);
+		if (!prefixcmp("no-", optstr) &&
+		    !prefixcmp(opts->long_name, optstr + 3))
+			print_option_help(opts, 0);
 	}
 
-	if (opts->type != OPTION_END)
-		print_option_help(opts, 0);
-
 	return PARSE_OPT_HELP;
 }
 
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

[GIT PULL 00/12] perf/core improvements and fixes Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 07/12] perf stat: Cache aggregated map entries in extra cpumap Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 08/12] perf tools: Search for more options when passing args to -h Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 04/12] perf tools: Introduce usage_with_options_msg() Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 10/12] perf symbols: we can now read separate debug-info files based on a build ID Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 02/12] perf report: Rename to --show-cpu-utilization Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 11/12] perf tools: Enable pre-event inherit setting by config terms Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 12/12] perf symbols: Fix endless loop in dso__split_kallsyms_for_kcore Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 09/12] perf symbols: Fix type error when reading a build-id Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 01/12] perf tools: Improve ambiguous option help message Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  [PATCH 05/12] perf evsel: Move id_offset out of struct perf_evsel union member Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-10-28 16:40 +0100
  Re: [GIT PULL 00/12] perf/core improvements and fixes Ingo Molnar <mingo@kernel.org> - 2015-10-29 10:40 +0100
    Re: [GIT PULL 00/12] perf/core improvements and fixes Ingo Molnar <mingo@kernel.org> - 2015-10-29 11:00 +0100
    Re: [GIT PULL 00/12] perf/core improvements and fixes Jiri Olsa <jolsa@redhat.com> - 2015-10-29 11:00 +0100

csiph-web