From: Will Deacon <will.deacon@arm.com>
To: Drew Richardson <drew.richardson@arm.com>
Cc: "a.p.zijlstra@chello.nl" <a.p.zijlstra@chello.nl>,
"mingo@redhat.com" <mingo@redhat.com>,
"acme@kernel.org" <acme@kernel.org>,
"linux@arm.linux.org.uk" <linux@arm.linux.org.uk>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
Wade Cherry <Wade.Cherry@arm.com>,
Pawel Moll <Pawel.Moll@arm.com>
Subject: Re: [PATCH] arm: perf: Fix userspace call stack walking
Date: Mon, 5 Oct 2015 13:32:42 +0100 [thread overview]
Message-ID: <20151005123242.GB8818@arm.com> (raw)
In-Reply-To: <20151001172643.GA23147@dreric01-gentoo.localdomain>
Hi Drew,
On Thu, Oct 01, 2015 at 06:26:47PM +0100, Drew Richardson wrote:
> I got some undeliverable responses the first time, sorry if you get this twice
>
> ---
>
> The layout of stack frames has changed over time. Testing using a
> arm-linux-gnueabi gcc-4.2 from 2007 the original code didn't work but
> this new code does. It also works with clang as well as newer versions
> of gcc.
>
> gcc has this layout for it's stackframes
>
> caller_fp
> caller_lr <- fp
>
> However clang has this layout
>
> caller_fp <- fp
> caller_lr
Do you have any buy-in from the toolchain people that this won't continue
to change over time? Adding more and more heuristics to walk the stack of
binaries compiled using GCC x.y doesn't really scale...
> Since the layouts are not compatible use a heuristic to determine for
> each stack frame which layout is used.
>
> Signed-off-by: Drew Richardson <drew.richardson@arm.com>
> ---
> arch/arm/kernel/perf_callchain.c | 86 +++++++++++++++++++++++++++++++++++-----
> 1 file changed, 76 insertions(+), 10 deletions(-)
Please can you update the compat stack walker in
arch/arm64/kernel/perf_callchain.c too?
Will
prev parent reply other threads:[~2015-10-05 12:32 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-01 17:26 [PATCH] arm: perf: Fix userspace call stack walking Drew Richardson
2015-10-01 19:10 ` Russell King - ARM Linux
2015-10-01 19:47 ` Drew Richardson
2015-10-05 12:32 ` Will Deacon [this message]
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=20151005123242.GB8818@arm.com \
--to=will.deacon@arm.com \
--cc=Pawel.Moll@arm.com \
--cc=Wade.Cherry@arm.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@kernel.org \
--cc=drew.richardson@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=mingo@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox