All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hekuang <hekuang@huawei.com>
To: David Ahern <dsahern@gmail.com>,
	Arnaldo Carvalho de Melo <arnaldo.melo@gmail.com>
Cc: <peterz@infradead.org>, <mingo@redhat.com>,
	<alexander.shishkin@linux.intel.com>, <jolsa@redhat.com>,
	<wangnan0@huawei.com>, <jpoimboe@redhat.com>,
	<ak@linux.intel.com>, <eranian@google.com>, <namhyung@kernel.org>,
	<adrian.hunter@intel.com>, <sukadev@linux.vnet.ibm.com>,
	<masami.hiramatsu.pt@hitachi.com>, <tumanova@linux.vnet.ibm.com>,
	<kan.liang@intel.com>, <penberg@kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 3/7] perf tools: Remove the logical that skip buildid cache if symfs is given
Date: Fri, 13 May 2016 15:19:31 +0800	[thread overview]
Message-ID: <57358003.3020203@huawei.com> (raw)
In-Reply-To: <5734E649.80505@gmail.com>

hi

在 2016/5/13 4:23, David Ahern 写道:
> On 5/12/16 7:09 AM, Arnaldo Carvalho de Melo wrote:
>> Em Thu, May 12, 2016 at 08:43:12AM +0000, He Kuang escreveu:
>>> Symfs dir and buildid dir are two places that perf looks into for
>>> symbols, currently, if symfs dir is given, buildid-cache is skipped.
>>>
>>> In the cross-platform perf record/script scenario, we need vdsos in
>>> buildid-cache dir and other libs in symfs dir at the same time. And
>>> consider that the binaries indexed by buildid do not cause ambiguity,
>>> this patch simply removes that logical.
>>
>> Makes perfect sense, David, do you have any concern? Can I have your
>> Acked-by?
>
> seems odd to me you want to look in the buildid-cache when a symfs is 
> given. The point of symfs was "go look for everything under here."
>
> I believe dso__load is going to hit DSO_BINARY_TYPE__BUILD_ID_CACHE 
> before any of the others and there are probably cases where a stale 
> cache entry would be hit before a build tree entry (e.g., symfs).

Build id entries recorded in perf.data reflect the current dso,
so if buildid is matched , how can it be a stale one?

>
> What about putting the build id cache under the symfs? so instead of 
> dropping the symfs check and it to the path for the build id cache.
>
>
I think your intention is to reference symbol files in one place
instead of two. So there're two possible approaches, one is all
in buildid-cache, but in practice, I found lots of binaries in
symfs even not contains valid buildid, so this way is not work.

The other one is all in symfs. It seems ok, but one problem I
should point out, with my test environment as an example, the
symfsdir is $(TARGET_ROOTFS),and by default buildid_dir is
$(TARGET_ROOTFS)/$(HOME)/.debug/, host perf does not know
$(HOME) folder in target and we should copy the debug folder
  to $(TARGET_ROOTFS), which is readonly in the target. For me, it's
easier to use 'buildid-cache -a vdso-xxxx' to add that into host
buildid-cache than copy debug folder from $(HOME) to readonly
$(TARGET_ROOTFS).

Without the stale concern, I prefer the two places(buildid-dir in
host and target symfs) way.

Thanks.

  parent reply	other threads:[~2016-05-13  7:21 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-12  8:43 [PATCH v3 0/7] Add support for remote unwind He Kuang
2016-05-12  8:43 ` [PATCH v3 1/7] perf tools: Set vdso name to vdso[64,32] depending on platform He Kuang
2016-05-12 10:06   ` Adrian Hunter
2016-05-13  8:51     ` [PATCH v3 1/7 UPDATE] perf tools: Find vdso with the consider of cross-platform He Kuang
2016-05-16 13:32       ` Arnaldo Carvalho de Melo
2016-05-17  7:34         ` Adrian Hunter
2016-05-17  7:33       ` Adrian Hunter
2016-05-17  9:04         ` [PATCH v3 1/7 UPDATE2] " He Kuang
2016-05-17  9:17           ` Adrian Hunter
2016-05-17 12:46             ` Arnaldo Carvalho de Melo
2016-06-15 13:34           ` Arnaldo Carvalho de Melo
2016-06-16  0:22             ` Hekuang
2016-06-16 13:00             ` Adrian Hunter
2016-06-16 16:33               ` Arnaldo Carvalho de Melo
2016-05-17  9:05         ` [PATCH v3 1/7 UPDATE] " Hekuang
2016-05-13  8:53     ` [PATCH v3 1/7] perf tools: Set vdso name to vdso[64,32] depending on platform Hekuang
2016-05-12  8:43 ` [PATCH v3 2/7] perf tools: Store vdso buildid unconditionally He Kuang
2016-05-12 13:09   ` Arnaldo Carvalho de Melo
2016-05-20  6:43   ` [tip:perf/urgent] perf symbols: " tip-bot for He Kuang
2016-05-12  8:43 ` [PATCH v3 3/7] perf tools: Remove the logical that skip buildid cache if symfs is given He Kuang
2016-05-12 13:09   ` Arnaldo Carvalho de Melo
2016-05-12 20:23     ` David Ahern
2016-05-12 20:33       ` Arnaldo Carvalho de Melo
2016-05-13  7:19       ` Hekuang [this message]
2016-05-13 14:27         ` David Ahern
2016-05-13 18:01           ` Arnaldo Carvalho de Melo
2016-05-14  8:19             ` [PATCH v3 3/7 UPDATE] perf tools: Add option for the path of buildid dsos under symfs He Kuang
2016-05-14 14:43               ` David Ahern
2016-05-16  1:30                 ` Hekuang
2016-05-16  2:50                   ` David Ahern
2016-05-16  6:40                     ` Hekuang
2016-05-18  1:47                     ` Hekuang
2016-05-18  1:51                       ` David Ahern
2016-05-18  2:48                         ` Hekuang
2016-05-18  3:04                           ` David Ahern
2016-05-12  8:43 ` [PATCH v3 4/7] perf tools: Promote proper messages for cross-platform unwind He Kuang
2016-05-12  8:43 ` [PATCH v3 5/7] perf callchain: Add support " He Kuang
2016-05-12  8:43 ` [PATCH v3 6/7] perf callchain: Support x86 target platform He Kuang
2016-05-12  8:43 ` [PATCH v3 7/7] perf callchain: Support aarch64 cross-platform He Kuang
2016-06-22  6:57 [PATCH 0/5] Fixes on perf unwind He Kuang
2016-06-22  6:57 ` [PATCH 1/5] perf unwind: Change macro names of perf register He Kuang
2016-06-26 10:56   ` [tip:perf/core] " tip-bot for He Kuang
2016-06-22  6:57 ` [PATCH 2/5] perf unwind: Fix wrongly used regs for x86_32 unwind He Kuang
2016-06-26 10:56   ` [tip:perf/core] " tip-bot for He Kuang
2016-06-22  6:57 ` [PATCH 3/5] perf unwind: Fix wrongly used regs for aarch64 unwind He Kuang
2016-06-26 10:57   ` [tip:perf/core] " tip-bot for He Kuang
2016-06-22  6:57 ` [PATCH 4/5] perf tools: Let python use correct gcc for build_ext He Kuang
2016-06-26 10:54   ` [tip:perf/core] " tip-bot for He Kuang
2016-06-22  6:57 ` [PATCH 5/5] perf tools: Fix NULL pointer deference when vdso not found He Kuang
2016-06-23  2:02   ` Wangnan (F)
2016-06-23  3:03     ` Hekuang
2016-06-23 12:07     ` Arnaldo Carvalho de Melo
2016-06-23 13:28       ` Arnaldo Carvalho de Melo
2016-06-26 10:55   ` [tip:perf/core] perf tools: Find right DSO taking into account if binary is 32 or 64-bit tip-bot for He Kuang
2016-06-23 13:30 ` [PATCH 0/5] Fixes on perf unwind Arnaldo Carvalho de Melo

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=57358003.3020203@huawei.com \
    --to=hekuang@huawei.com \
    --cc=adrian.hunter@intel.com \
    --cc=ak@linux.intel.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=arnaldo.melo@gmail.com \
    --cc=dsahern@gmail.com \
    --cc=eranian@google.com \
    --cc=jolsa@redhat.com \
    --cc=jpoimboe@redhat.com \
    --cc=kan.liang@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masami.hiramatsu.pt@hitachi.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=penberg@kernel.org \
    --cc=peterz@infradead.org \
    --cc=sukadev@linux.vnet.ibm.com \
    --cc=tumanova@linux.vnet.ibm.com \
    --cc=wangnan0@huawei.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.