All of lore.kernel.org
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Milian Wolff <milian.wolff@kdab.com>,
	jolsa@kernel.org, Linux-kernel@vger.kernel.org,
	linux-perf-users@vger.kernel.org,
	Arnaldo Carvalho de Melo <acme@redhat.com>,
	Yao Jin <yao.jin@linux.intel.com>, Jiri Olsa <jolsa@redhat.com>,
	kernel-team@lge.com
Subject: Re: [PATCH v6 6/6] perf util: use correct IP mapping to find srcline for hist entry
Date: Tue, 31 Oct 2017 08:35:23 +0900	[thread overview]
Message-ID: <20171030233523.GA4597@sejong> (raw)
In-Reply-To: <20171030200347.GS7045@kernel.org>

Hi Arnaldo,

On Mon, Oct 30, 2017 at 05:03:47PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Wed, Oct 25, 2017 at 10:46:00AM +0900, Namhyung Kim escreveu:
> > Hi Milian,
> > 
> > On Tue, Oct 24, 2017 at 10:51:43AM +0200, Milian Wolff wrote:
> > > On Freitag, 20. Oktober 2017 07:15:33 CEST Namhyung Kim wrote:
> > > > I looked into it and found a bug handling cumulative (children)
> > > > entries.  For chilren entries that has no self period, the al->addr
> > > > (so he->ip) ends up having an doubly-mapped address.
> > > > 
> > > > It seems to be there from the beginning but only affects entries that
> > > > have no srclines - finding srcline itself is done using a different
> > > > address but it will show the invalid address if no srcline was found.
> > > > I think we should fix the commit c7405d85d7a3 ("perf tools: Update
> > > > cpumode for each cumulative entry").
> > > > 
> > > > Could you please test the following patch works for you?
> > > 
> > > Sorry for the delay, nearly forgot about this mail. The patch below does help 
> > > in my situation, thanks! Can you commit it please?
> > 
> > Sure, I'll add your Tested-by then.
> 
> Namhyung, I couldn't find a submission from you for this one, so I
> tentatively added this to my perf/core branch, please let me know if you
> want to reword this somehow.

I already sent it:

  https://lkml.org/lkml/2017/10/24/1130

But I'm also ok with yours (with small changes below).


> 
> commit 0485954310bf3490cb73936164ca03a0c5916773
> Author: Namhyung Kim <namhyung@kernel.org>
> Date:   Fri Oct 20 14:15:33 2017 +0900
> 
>     perf callchain: Fix double mapping al->addr for children without self period
>     
>     Milian Wolff found a problem he described in [1] and that for him would

Where's the link for [1]?

>     get fixed:
>     
>     "Note how most of the large offset values are now gone. Most notably, we
>     get proper srcline resolution for the random.h and complex headers."
>     
>     Then Namhyung found the root cause:
>     
>     "I looked into it and found a bug handling cumulative (children)
>     entries.  For children entries that has no self period, the al->addr (so

s/has/have/

Thanks,
Namhyung


>     he->ip) ends up having an doubly-mapped address.
>     
>     It seems to be there from the beginning but only affects entries that
>     have no srclines - finding srcline itself is done using a different
>     address but it will show the invalid address if no srcline was found.  I
>     think we should fix the commit c7405d85d7a3 ("perf tools: Update cpumode
>     for each cumulative entry")."
>     
>     Reported-by: Milian Wolff <milian.wolff@kdab.com>
>     Signed-off-by: Namhyung Kim <namhyung@kernel.org>
>     Tested-by: Milian Wolff <milian.wolff@kdab.com>
>     Cc: Jin Yao <yao.jin@linux.intel.com>
>     Cc: Jiri Olsa <jolsa@redhat.com>
>     Cc: kernel-team@lge.com
>     Fixes: c7405d85d7a3 ("perf tools: Update cpumode for each cumulative entry")
>     Link: http://lkml.kernel.org/r/20171020051533.GA2746@sejong
>     Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
> 
> diff --git a/tools/perf/util/callchain.c b/tools/perf/util/callchain.c
> index 3a3916934a92..837012147c7b 100644
> --- a/tools/perf/util/callchain.c
> +++ b/tools/perf/util/callchain.c
> @@ -1091,10 +1091,7 @@ int fill_callchain_info(struct addr_location *al, struct callchain_cursor_node *
>  	al->map = node->map;
>  	al->sym = node->sym;
>  	al->srcline = node->srcline;
> -	if (node->map)
> -		al->addr = node->map->map_ip(node->map, node->ip);
> -	else
> -		al->addr = node->ip;
> +	al->addr = node->ip;
>  
>  	if (al->sym == NULL) {
>  		if (hide_unresolved)

  reply	other threads:[~2017-10-30 23:35 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-18 18:53 [PATCH v6 0/6] generate full callchain cursor entries for inlined frames Milian Wolff
2017-10-18 18:53 ` [PATCH v6 1/6] perf report: properly handle branch count in match_chain Milian Wolff
2017-10-18 22:41   ` Andi Kleen
2017-10-19 10:59     ` Milian Wolff
2017-10-19 13:55       ` Andi Kleen
2017-10-19 15:01         ` Namhyung Kim
2017-10-20 10:21           ` Milian Wolff
2017-10-20 11:38             ` Milian Wolff
2017-10-20 13:39               ` Arnaldo Carvalho de Melo
2017-10-23  5:19                 ` Namhyung Kim
2017-10-20 15:22   ` Arnaldo Carvalho de Melo
2017-10-20 19:52     ` Milian Wolff
2017-10-25 17:20   ` [tip:perf/core] perf report: Properly handle branch count in match_chain() tip-bot for Milian Wolff
2017-10-18 18:53 ` [PATCH v6 2/6] perf report: cache failed lookups of inlined frames Milian Wolff
2017-10-18 18:53 ` [PATCH v6 3/6] perf report: cache srclines for callchain nodes Milian Wolff
2017-10-18 18:53 ` [PATCH v6 4/6] perf report: use srcline from callchain for hist entries Milian Wolff
2017-10-18 18:53 ` [PATCH v6 5/6] perf util: enable handling of inlined frames by default Milian Wolff
2017-10-18 18:53 ` [PATCH v6 6/6] perf util: use correct IP mapping to find srcline for hist entry Milian Wolff
2017-10-19 10:54   ` Milian Wolff
2017-10-20  5:15     ` Namhyung Kim
2017-10-24  8:51       ` Milian Wolff
2017-10-25  1:46         ` Namhyung Kim
2017-10-30 20:03           ` Arnaldo Carvalho de Melo
2017-10-30 23:35             ` Namhyung Kim [this message]
2017-11-03 14:21       ` [tip:perf/core] perf callchain: Fix double mapping al->addr for children without self period tip-bot for Namhyung Kim
2017-10-18 22:43 ` [PATCH v6 0/6] generate full callchain cursor entries for inlined frames Andi Kleen
2017-10-20 15:43   ` Arnaldo Carvalho de Melo
  -- strict thread matches above, loose matches on Subject: below --
2017-10-19 11:38 [PATCH v7 0/5] " Milian Wolff
2017-10-19 11:38 ` [PATCH v7 1/5] perf report: properly handle branch count in match_chain Milian Wolff
2017-10-19 11:42   ` Milian Wolff
2017-10-23 15:15     ` Andi Kleen
2017-10-23 18:39       ` Milian Wolff
2017-10-23 20:39         ` Andi Kleen
2017-10-19 11:38 ` [PATCH v7 2/5] perf report: cache failed lookups of inlined frames Milian Wolff
2017-10-25 17:20   ` [tip:perf/core] perf report: Cache " tip-bot for Milian Wolff
2017-10-19 11:38 ` [PATCH v7 3/5] perf report: cache srclines for callchain nodes Milian Wolff
2017-10-25 17:20   ` [tip:perf/core] perf report: Cache " tip-bot for Milian Wolff
2017-10-19 11:38 ` [PATCH v7 4/5] perf report: use srcline from callchain for hist entries Milian Wolff
2017-10-25 17:21   ` [tip:perf/core] perf report: Use " tip-bot for Milian Wolff
2017-10-19 11:38 ` [PATCH v7 5/5] perf util: enable handling of inlined frames by default Milian Wolff
2017-10-25 17:21   ` [tip:perf/core] perf util: Enable " tip-bot for Milian Wolff
2017-10-20 16:15 ` [PATCH v7 0/5] generate full callchain cursor entries for inlined frames Arnaldo Carvalho de Melo
2017-10-20 20:21   ` Milian Wolff
2017-10-23 14:29     ` Arnaldo Carvalho de Melo
2017-10-23 19:04       ` Milian Wolff
2017-10-23 19:04     ` Arnaldo Carvalho de Melo
2017-10-23 19:39       ` Milian Wolff
2017-10-23 22:43         ` Arnaldo Carvalho de Melo
2017-10-24 13:27         ` Arnaldo Carvalho de Melo
2017-10-25  2:09           ` 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=20171030233523.GA4597@sejong \
    --to=namhyung@kernel.org \
    --cc=Linux-kernel@vger.kernel.org \
    --cc=acme@kernel.org \
    --cc=acme@redhat.com \
    --cc=jolsa@kernel.org \
    --cc=jolsa@redhat.com \
    --cc=kernel-team@lge.com \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=milian.wolff@kdab.com \
    --cc=yao.jin@linux.intel.com \
    /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.