All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Jiri Olsa <jolsa@kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: RFC: callchain showing same entry as hist_entry
Date: Tue, 16 Aug 2016 12:31:43 -0300	[thread overview]
Message-ID: <20160816153143.GJ20972@kernel.org> (raw)
In-Reply-To: <20160816152355.GC11382@danjae.aot.lge.com>

Em Wed, Aug 17, 2016 at 12:23:55AM +0900, Namhyung Kim escreveu:
> On Tue, Aug 16, 2016 at 12:08:03PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Tue, Aug 16, 2016 at 11:55:11PM +0900, Namhyung Kim escreveu:
> > > 
> > > On Tue, Aug 16, 2016 at 11:36:28AM -0300, Arnaldo Carvalho de Melo wrote:
> > > > 	please take a look at the patch below, and Ack if possible, it
> > > > is a problem introduced in:
> > > > 
> > > >   cfaa154b2335 ("perf tools: Get rid of obsolete hist_entry__sort_list")
> > > > 
> > > > That is not equivalent to the code that was there and results in having
> > > > the same entry as the first entry for the callchain as in the
> > > > hist_entry, which is annoying and doesn't match the original intent of
> > > > that 'continue' branch, as described in the comment right above it.
> > > 
> > > AFAIK the intent was to skip first callchain entry iff the first sort
> > > key is 'symbol'.  The sort_order being NULL means it'd use the default
> > > sort key which is 'comm,dso,sym' so it should not skip the first
> > > callchain entry.
> > > 
> > > The original code (before cfaa154b2335) was like below:
> > > 
> > > -                       if (!i++ && sort__first_dimension == SORT_SYM)
> > > +                       if (!i++ && field_order == NULL &&
> > > +                           sort_order && !prefixcmp(sort_order, "sym"))
> > > 
> > > I think the current code works as intended, no?
> > 
> > Well, see below the cset comment (local one, will change as we discuss),
> > may clarify further, but yeah, we can't take for granted that the
> > default sort order has "sym" in it :-\
> > 
> > So the original intent description was ambiguous, what we want to avoid
> > is what is in the cset comment below, so the logic for that should be a
> > bit different, tho.
> > 
> > For starters we need to have a callchain_something__first() that will
> > skip the first one using this logic and then use it in all places in
> > --stdio, --tui, --gtk where we need this.
> > 
> > commit c066eaa8d06b87c77b82d55bbc59be308aca4684
> > Author: Arnaldo Carvalho de Melo <acme@redhat.com>
> > Date:   Tue Aug 16 11:36:50 2016 -0300
> > 
> >     perf callchain: Do not repeat the hist_entry symbol as the 1st callchain entry
> >     
> >     We were getting:
> >     
> >          2.62%  [k] __d_lookup_rcu
> >                 |
> >                 ---__d_lookup_rcu
> >                    |
> >                     --2.52%--lookup_fast
> >                               |
> >                                --2.50%--walk_component
> >     
> >     Noticed the __d_lookup_rcu dup, when the original coder intent, and the saner
> >     output is:
> >     
> >          2.62%  [k] __d_lookup_rcu
> >                 |
> >                  --2.52%--lookup_fast
> >                            |
> >                             --2.50%--walk_component
> >     
> >     This is for --stdio, TUI being investigated.
> 
> Did you run 'perf report -s sym --stdio'?  It seems that current code
> already works as sane..  Do you want to make it work for the default sort
>> key too?

What I want is not to repeat the hist_entry line as the first entry in
the callchain, which is confusing.

I.e. repeat the duplication that is happening with the default sort
entry, that contains "sym".

- Arnaldo

  reply	other threads:[~2016-08-16 15:31 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-16 14:36 RFC: callchain showing same entry as hist_entry Arnaldo Carvalho de Melo
2016-08-16 14:50 ` Jiri Olsa
2016-08-16 14:55 ` Namhyung Kim
2016-08-16 15:08   ` Arnaldo Carvalho de Melo
2016-08-16 15:23     ` Namhyung Kim
2016-08-16 15:31       ` Arnaldo Carvalho de Melo [this message]
2016-08-16 15:32         ` Arnaldo Carvalho de Melo
2016-08-16 15:41           ` Namhyung Kim
2016-08-16 15:46             ` Arnaldo Carvalho de Melo
2016-08-16 19:21               ` Arnaldo Carvalho de Melo
2016-08-19  2:20                 ` Namhyung Kim

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160816153143.GJ20972@kernel.org \
    --to=acme@kernel.org \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=namhyung@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.