[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170629152252.GA1463@krava>
Date: Thu, 29 Jun 2017 17:22:52 +0200
From: Jiri Olsa <jolsa@...hat.com>
To: "Du, Changbin" <changbin.du@...el.com>
Cc: jolsa@...nel.org, peterz@...radead.org, mingo@...hat.com,
alexander.shishkin@...ux.intel.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] perf sort: only insert overhead && overhead_children
when no overhead* field given
On Mon, Jun 26, 2017 at 04:06:26PM +0800, Du, Changbin wrote:
>
> 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@...el.com wrote:
> > From: Changbin Du <changbin.du@...el.com>
> >
> > 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@...el.com>
> > ---
> > 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;
> > +
ah ok, I think it's right.. basically you're forcing
precedence of the -s option over the --children option
you could have your example working by running:
$ perf report -s overhead,sym --no-children
please state something like:
/*
* User already stated overhead within -s option,
* do not mangle with that.
*/
thanks,
jirka
Powered by blists - more mailing lists