Re: [PATCH 1/4] perf tools: Split -g and --call-graph for recordcommand

From: Arnaldo Carvalho de Melo
Date: Mon Oct 28 2013 - 13:47:09 EST


Em Sun, Oct 27, 2013 at 09:30:06AM -0600, David Ahern escreveu:
> On 10/26/13 8:25 AM, Jiri Olsa wrote:
> >diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> >index f10ab63..7be62770 100644
> >--- a/tools/perf/Documentation/perf-record.txt
> >+++ b/tools/perf/Documentation/perf-record.txt
> >@@ -92,8 +92,12 @@ OPTIONS
> > size is rounded up to have nearest pages power of two value.
> >
> > -g::
> >+ Enables call-graph (stack chain/backtrace) recording.
> >+
> > --call-graph::
> >- Do call-graph (stack chain/backtrace) recording.
> >+ Setup and enable call-graph (stack chain/backtrace) recording,
> >+ implies -g.
> >+
>
> This needs some more words as to why it is used over -g. It is also
> missing the options that can be given (fp or dwarf).

Added this:

--call-graph::
Setup and enable call-graph (stack chain/backtrace) recording,
implies -g.

Allows specifying "fp" (frame pointer) or "dwarf"
(DWARF's CFI - Call Frame Information) as the method to collect
the information used to show the call graphs.

In some systems, where binaries are build wit gcc
--fomit-frame-pointer, using the "fp" method will produce bogus
call graphs, using "dwarf", if available (perf tools linked to
the libunwind library) should be used instead.


> ---8<---
>
> >@@ -825,9 +851,12 @@ const struct option record_options[] = {
> > perf_evlist__parse_mmap_pages),
> > OPT_BOOLEAN(0, "group", &record.opts.group,
> > "put the counters into a counter group"),
> >- OPT_CALLBACK_DEFAULT('g', "call-graph", &record.opts,
> >- "mode[,dump_size]", record_callchain_help,
> >- &record_parse_callchain_opt, "fp"),
> >+ OPT_CALLBACK(0, "call-graph", &record.opts,
> >+ "mode[,dump_size]", record_callchain_help,
> >+ &record_parse_callchain_opt),
> >+ OPT_CALLBACK_NOOPT('g', NULL, &record.opts,
> >+ NULL, "enables call-graph recording" ,
> >+ &record_callchain_opt),
>
> From a user/readability perspective I would prefer the order to be
> -g then --call-graph especially since --call-graph is like an
> advanced -g where you get more control over the method used.

Reordered as suggested.

> Other than that:
>
> Tested-Reviewed-by: David Ahern <dsahern@xxxxxxxxx>

Thanks, adding those two.

And reworking it to make it apply against my perf/urgent branch, trying to fix
this annoyance on this merge window, as suggested by Ingo.

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