Em Thu, Dec 10, 2015 at 12:00:57PM +0900, Namhyung Kim escreveu:
> Move setup_browser after all necessary initialization is done.  This
> is to remove the browser dependency from usage_with_options() and
> friends.

So, please try:

perf top -C 0 -p 1

So that we get a command line validation error that will cause cmd_top
to trip this:

        status = target__validate(target);
        if (status) {
                target__strerror(target, status, errbuf, BUFSIZ);
                ui__warning("%s\n", errbuf);
        }

ui__warning() will emit the warning to stdio, and this message will be
seen only after the user exits the tool:

[root@ssdandy ~]# perf top -C 0 -p 1
Warning:
PID/TID switch overriding CPU

Where without this patch the user will be warning with a popup window,
that has to be acknowledged with an enter before proceeding.

Looking at the other patches to check which can be processed now,
leaving this one for later.

- Arnaldo
 
> Cc: Josh Poimboeuf <[email protected]>
> Signed-off-by: Namhyung Kim <[email protected]>
> ---
>  tools/perf/builtin-top.c | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
> index 7e2e72e6d9d1..75134e106a62 100644
> --- a/tools/perf/builtin-top.c
> +++ b/tools/perf/builtin-top.c
> @@ -1252,13 +1252,6 @@ int cmd_top(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>               goto out_delete_evlist;
>       }
>  
> -     if (top.use_stdio)
> -             use_browser = 0;
> -     else if (top.use_tui)
> -             use_browser = 1;
> -
> -     setup_browser(false);
> -
>       status = target__validate(target);
>       if (status) {
>               target__strerror(target, status, errbuf, BUFSIZ);
> @@ -1326,6 +1319,13 @@ int cmd_top(int argc, const char **argv, const char 
> *prefix __maybe_unused)
>               sigaction(SIGWINCH, &act, NULL);
>       }
>  
> +     if (top.use_stdio)
> +             use_browser = 0;
> +     else if (top.use_tui)
> +             use_browser = 1;
> +
> +     setup_browser(false);
> +
>       status = __cmd_top(&top);
>  
>  out_delete_evlist:
> -- 
> 2.6.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to