From: jon.medhurst@linaro.org (Jon Medhurst (Tixy))
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] arm: Add unwinding annotations for 64bit division functions
Date: Thu, 22 Sep 2011 12:06:46 +0100 [thread overview]
Message-ID: <1316689606.2053.29.camel@linaro1> (raw)
In-Reply-To: <CAHkRjk7B4Bmt2g6ptHO3TudXgrkr5rv4b--Hbx-mw7=MO9Q+BQ@mail.gmail.com>
On Thu, 2011-09-22 at 10:48 +0100, Catalin Marinas wrote:
> On 22 September 2011 08:28, Jon Medhurst (Tixy) <jon.medhurst@linaro.org> wrote:
> > On Wed, 2011-09-21 at 12:55 +0100, Russell King - ARM Linux wrote:
> >> Instructions such as VFP, kprobes tracing, etc are expected fault
> >> locations, and those are fairly well controlled where they can be placed.
> >> With things like ftrace, it certainly is the case that the unwinder can
> >> theoretically be called from almost anywhere in a function.
> >
> > Actually, kprobes can be places on any instruction in the kernel that
> > isn't in the section .kprobes.text.
> >
> > I also strongly suspect that stack unwinding won't happen correctly
> > across the boundary between the kprobes handling code and the function
> > which was probed - there's an awful lot of stack jiggery pokery going on
> > there.
>
> Are people most likely to place kprobes on the first instruction of a
> function?
I believe that is the usual case.
> We could improve things a bit in the unwinder and assume
> that if the fault address is the same as the .fnstart address, the
> return value is always in LR and the SP not affected (that's unwinding
> bytecode 0xb0). For a few instructions into the function prologue we
> can't reliably get the unwinding information.
That would help make it possible to unwind out of kprobes handlers to
the probed function. The kprobes code itself would need work as well,
and possibly the undef handler. Do we think it is worthwhile to do
this?
--
Tixy
next prev parent reply other threads:[~2011-09-22 11:06 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-19 22:11 [PATCH] arm: Add unwinding annotations for 64bit division functions Laura Abbott
2011-09-19 23:22 ` Nicolas Pitre
2011-09-20 1:55 ` Laura Abbott
2011-09-20 13:27 ` Nicolas Pitre
2011-09-20 14:57 ` Catalin Marinas
2011-09-21 11:39 ` Dave Martin
2011-09-21 11:55 ` Russell King - ARM Linux
2011-09-21 13:33 ` Dave Martin
2011-09-22 7:28 ` Jon Medhurst (Tixy)
2011-09-22 9:48 ` Catalin Marinas
2011-09-22 11:06 ` Jon Medhurst (Tixy) [this message]
2011-09-22 11:57 ` Catalin Marinas
2011-09-22 12:13 ` Jon Medhurst (Tixy)
2011-09-22 13:00 ` Catalin Marinas
2011-09-22 13:19 ` Jon Medhurst (Tixy)
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=1316689606.2053.29.camel@linaro1 \
--to=jon.medhurst@linaro.org \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).