Re: [PATCH 1/3] perf help: Document missing options

From: Arnaldo Carvalho de Melo
Date: Tue Nov 14 2017 - 08:00:22 EST


Em Tue, Nov 14, 2017 at 09:15:42AM +0900, Namhyung Kim escreveu:
> Hi Arnaldo,
>
> On Mon, Nov 13, 2017 at 03:29:56PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Sun, Nov 12, 2017 at 10:10:45AM +0900, Sihyeon Jang escreveu:
> > > Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
> > > Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
> > > Signed-off-by: Sihyeon Jang <uneedsihyeon@xxxxxxxxx>
> > > ---
> > > tools/perf/Documentation/perf-help.txt | 14 +++++++++++++-
> > > 1 file changed, 13 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/tools/perf/Documentation/perf-help.txt b/tools/perf/Documentation/perf-help.txt
> > > index 5143918..bb605af 100644
> > > --- a/tools/perf/Documentation/perf-help.txt
> > > +++ b/tools/perf/Documentation/perf-help.txt
> > > @@ -7,7 +7,7 @@ perf-help - display help information about perf
> > >
> > > SYNOPSIS
> > > --------
> > > -'perf help' [-a|--all] [COMMAND]
> > > +'perf help' [--all] [--man|--web|--info] [COMMAND]
> >
> > Can you try figuring out if this actually works? I tried here and it
> > doesn't, its an area we took "for free" when we copied the initial
> > codebase from git.git, but I never looked at this area that much, now
> > that I try:
>
> Yeah, I'm not sure we need to keep it.
>
>
> >
> > [acme@jouet linux]$ perf help
> > Config with no key for man viewer: childrenError: wrong config key-value pair top.children=true
> > [acme@jouet linux]$
> >
> > Unsure if this is something that got broken by the 'perf config'
> > patches, Taeung?
>
> Looks like a bug in 8e99b6d4533c ("tools include: Adopt strstarts()
> from the kernel").

Wow, who did this?! ;-P

> Following patch should fix it:

Thanks!

> Thanks,
> Namhyung
>
>
> >From 096b78b437b5758acc025498e88d73d9d471b3c0 Mon Sep 17 00:00:00 2001
> From: Namhyung Kim <namhyung@xxxxxxxxxx>
> Date: Tue, 14 Nov 2017 09:10:43 +0900
> Subject: [PATCH] perf help: Fix a bug during strstart() conversion
>
> The commit 8e99b6d4533c changed prefixcmp() to strstart() but missed to
> change the return value in some place. It makes perf help print
> annoying output even for sane config items like below:
>
> $ perf help
> '.root': unsupported man viewer sub key.
> ...
>
> Fixes: 8e99b6d4533c ("tools include: Adopt strstarts() from the kernel")
> Cc: Taeung Song <treeze.taeung@xxxxxxxxx>
> Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
> ---
> tools/perf/builtin-help.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/builtin-help.c b/tools/perf/builtin-help.c
> index dbe4e4153bcf..ff51e5fc0daf 100644
> --- a/tools/perf/builtin-help.c
> +++ b/tools/perf/builtin-help.c
> @@ -283,7 +283,7 @@ static int perf_help_config(const char *var, const char *value, void *cb)
> add_man_viewer(value);
> return 0;
> }
> - if (!strstarts(var, "man."))
> + if (strstarts(var, "man."))
> return add_man_viewer_info(var, value);
>
> return 0;
> @@ -313,7 +313,7 @@ static const char *cmd_to_page(const char *perf_cmd)
>
> if (!perf_cmd)
> return "perf";
> - else if (!strstarts(perf_cmd, "perf"))
> + else if (strstarts(perf_cmd, "perf"))
> return perf_cmd;
>
> return asprintf(&s, "perf-%s", perf_cmd) < 0 ? NULL : s;
> --
> 2.15.0