[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <57358003.3020203@huawei.com>
Date: Fri, 13 May 2016 15:19:31 +0800
From: Hekuang <hekuang@...wei.com>
To: David Ahern <dsahern@...il.com>,
Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>
CC: <peterz@...radead.org>, <mingo@...hat.com>,
<alexander.shishkin@...ux.intel.com>, <jolsa@...hat.com>,
<wangnan0@...wei.com>, <jpoimboe@...hat.com>, <ak@...ux.intel.com>,
<eranian@...gle.com>, <namhyung@...nel.org>,
<adrian.hunter@...el.com>, <sukadev@...ux.vnet.ibm.com>,
<masami.hiramatsu.pt@...achi.com>, <tumanova@...ux.vnet.ibm.com>,
<kan.liang@...el.com>, <penberg@...nel.org>,
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v3 3/7] perf tools: Remove the logical that skip buildid
cache if symfs is given
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.
Powered by blists - more mailing lists