summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYunlong Song <yunlong.song@huawei.com>2015-02-27 18:21:29 +0800
committerArnaldo Carvalho de Melo <acme@redhat.com>2015-02-27 15:52:09 -0300
commited45752061be11a40f57df4304296147dbda2da9 (patch)
tree8045086b5914af4b880867ec5fd15d900e6ffca5
parent161149513b3570ebd7fe14fc2ddc42cb46557e37 (diff)
downloadlinux-ed45752061be11a40f57df4304296147dbda2da9.tar.gz
linux-ed45752061be11a40f57df4304296147dbda2da9.tar.bz2
linux-ed45752061be11a40f57df4304296147dbda2da9.zip
perf list: Avoid confusion of perf output and the next command prompt
Distinguish the output of 'perf list --list-opts' or 'perf --list-cmds' with the next command prompt, which also happens in other cases (e.g. record, report ...). Example: Before this patch: $perf list --list-opts --raw-dump $ <-- the output and the next command prompt are at the same line After this patch: $perf list --list-opts --raw-dump $ <-- the new line Signed-off-by: Yunlong Song <yunlong.song@huawei.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/r/1425032491-20224-6-git-send-email-yunlong.song@huawei.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r--tools/perf/perf.c1
-rw-r--r--tools/perf/util/parse-options.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/tools/perf/perf.c b/tools/perf/perf.c
index f3c66b81c6be..3df2665022be 100644
--- a/tools/perf/perf.c
+++ b/tools/perf/perf.c
@@ -223,6 +223,7 @@ static int handle_options(const char ***argv, int *argc, int *envchanged)
struct cmd_struct *p = commands+i;
printf("%s ", p->cmd);
}
+ putchar('\n');
exit(0);
} else if (!strcmp(cmd, "--debug")) {
if (*argc < 2) {
diff --git a/tools/perf/util/parse-options.c b/tools/perf/util/parse-options.c
index 4ee9a86705ed..b0ef2d813d2f 100644
--- a/tools/perf/util/parse-options.c
+++ b/tools/perf/util/parse-options.c
@@ -508,12 +508,14 @@ int parse_options_subcommand(int argc, const char **argv, const struct option *o
printf("--%s ", options->long_name);
options++;
}
+ putchar('\n');
exit(130);
case PARSE_OPT_LIST_SUBCMDS:
if (subcommands) {
for (int i = 0; subcommands[i]; i++)
printf("%s ", subcommands[i]);
}
+ putchar('\n');
exit(130);
default: /* PARSE_OPT_UNKNOWN */
if (ctx.argv[0][1] == '-') {