Re: [PATCH v2] perf sort: only insert overhead && overhead_children when no overhead* field given
From: Du, Changbin
Date: Mon Jun 26 2017 - 04:11:12 EST
Hi, Jiri,
what is the status of this one? I didn't get a response of v2. thanks.
On Fri, Jun 02, 2017 at 12:22:00PM +0800, changbin.du@xxxxxxxxx wrote:
> From: Changbin Du <changbin.du@xxxxxxxxx>
>
> If we always insert 'overhead' and 'overhead_children' as sort keys,
> this make it impossible to sort as overhead (which displayed as Self)
> first.Ths will be a problem if the data is collected with call-graph
> enabled. Then we never can sort the result as self-overhead on this
> data. And sometimes the data is hard to collect.
>
> > perf record -ag
> > perf report -s overhead,sym
>
> Samples: 7K of event 'cycles', Event count (approx.): 865138253
> Children Self Symbol
> + 26.41% 0.00% [k] verify_cpu
> + 26.37% 0.04% [k] cpu_startup_entry
> + 25.93% 0.27% [k] do_idle
> + 19.88% 0.00% [k] start_secondary
> ....
>
> I intend to sort as 'Self', but actually it sort as 'Children'.
>
> This patch fix this by only insert overhead && overhead_children
> when no overhead* field given.
>
> Signed-off-by: Changbin Du <changbin.du@xxxxxxxxx>
> ---
> v2: Add the example in commit message.
>
> ---
> tools/perf/util/sort.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/tools/perf/util/sort.c b/tools/perf/util/sort.c
> index 5762ae4..69eea3a 100644
> --- a/tools/perf/util/sort.c
> +++ b/tools/perf/util/sort.c
> @@ -2635,6 +2635,9 @@ static char *setup_overhead(char *keys)
> if (sort__mode == SORT_MODE__DIFF)
> return keys;
>
> + if (strstr(keys, "overhead"))
> + return keys;
> +
> keys = prefix_if_not_in("overhead", keys);
>
> if (symbol_conf.cumulate_callchain)
> --
> 2.7.4
>
--
Thanks,
Changbin Du
Attachment:
signature.asc
Description: PGP signature