All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org, Changbin Du <changbin.du@intel.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [PATCH 01/11] perf lock: Subcommands should include common options
Date: Mon, 20 Mar 2017 22:16:31 -0300	[thread overview]
Message-ID: <20170321011641.25763-2-acme@kernel.org> (raw)
In-Reply-To: <20170321011641.25763-1-acme@kernel.org>

From: Changbin Du <changbin.du@intel.com>

When I use -i option for report subcommand, it doesn't accept it.  We
need add common options using OPT_PARENT macro.

perf lock report -i lock_perf.data
  Error: unknown switch `i'

  Usage: perf lock report [<options>]

    -f, --force           don't complain, do it
    -k, --key <acquired>  key for sorting ...

Signed-off-by: Changbin Du <changbin.du@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/20170317055342.8284-1-changbin.du@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-lock.c | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/tools/perf/builtin-lock.c b/tools/perf/builtin-lock.c
index d750ccaa978f..4ce815bb360d 100644
--- a/tools/perf/builtin-lock.c
+++ b/tools/perf/builtin-lock.c
@@ -948,27 +948,30 @@ static int __cmd_record(int argc, const char **argv)
 
 int cmd_lock(int argc, const char **argv, const char *prefix __maybe_unused)
 {
+	const struct option lock_options[] = {
+	OPT_STRING('i', "input", &input_name, "file", "input file name"),
+	OPT_INCR('v', "verbose", &verbose, "be more verbose (show symbol address, etc)"),
+	OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace, "dump raw trace in ASCII"),
+	OPT_END()
+	};
+
 	const struct option info_options[] = {
 	OPT_BOOLEAN('t', "threads", &info_threads,
 		    "dump thread list in perf.data"),
 	OPT_BOOLEAN('m', "map", &info_map,
 		    "map of lock instances (address:name table)"),
 	OPT_BOOLEAN('f', "force", &force, "don't complain, do it"),
-	OPT_END()
-	};
-	const struct option lock_options[] = {
-	OPT_STRING('i', "input", &input_name, "file", "input file name"),
-	OPT_INCR('v', "verbose", &verbose, "be more verbose (show symbol address, etc)"),
-	OPT_BOOLEAN('D', "dump-raw-trace", &dump_trace, "dump raw trace in ASCII"),
-	OPT_END()
+	OPT_PARENT(lock_options)
 	};
+
 	const struct option report_options[] = {
 	OPT_STRING('k', "key", &sort_key, "acquired",
 		    "key for sorting (acquired / contended / avg_wait / wait_total / wait_max / wait_min)"),
 	OPT_BOOLEAN('f', "force", &force, "don't complain, do it"),
 	/* TODO: type */
-	OPT_END()
+	OPT_PARENT(lock_options)
 	};
+
 	const char * const info_usage[] = {
 		"perf lock info [<options>]",
 		NULL
-- 
2.9.3

  reply	other threads:[~2017-03-21  1:18 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-21  1:16 [GIT PULL 00/11] perf/core improvements and fixes Arnaldo Carvalho de Melo
2017-03-21  1:16 ` Arnaldo Carvalho de Melo
2017-03-21  1:16 ` Arnaldo Carvalho de Melo [this message]
2017-03-21  1:16 ` [PATCH 02/11] perf lock: Make 'f' part of the common 'lock_options' Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 03/11] perf timechart: Use OPT_PARENT for common options Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 04/11] tools lib api fs: Introduce sysfs__read_bool Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 05/11] tools include: Sync {,tools/}include/uapi/linux/perf_event.h Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 06/11] perf tools: Handle partial AUX records and print a warning Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 07/11] tools headers: Sync {tools/,}arch/x86/include/asm/cpufeatures.h Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 08/11] tools headers: Sync {tools/,}arch/arm{64}/include/uapi/asm/kvm.h Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 09/11] perf stat: Correct --no-aggr description Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 10/11] perf probe: Fix concat_probe_trace_events Arnaldo Carvalho de Melo
2017-03-21  1:16 ` [PATCH 11/11] tools headers: Sync {tools/,}arch/powerpc/include/uapi/asm/kvm.h Arnaldo Carvalho de Melo
2017-03-21  6:43 ` [GIT PULL 00/11] perf/core improvements and fixes Ingo Molnar
2017-03-21  6:43   ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170321011641.25763-2-acme@kernel.org \
    --to=acme@kernel.org \
    --cc=acme@redhat.com \
    --cc=changbin.du@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.