public inbox for libc-ports@sourceware.org
 help / color / mirror / Atom feed
From: Will Newton <will.newton@linaro.org>
To: "Joseph S. Myers" <joseph@codesourcery.com>
Cc: "libc-ports@sourceware.org" <libc-ports@sourceware.org>,
	Patch Tracking <patches@linaro.org>
Subject: Re: [PATCH] ARM: Add SystemTap probes to longjmp and setjmp.
Date: Mon, 27 Jan 2014 20:51:00 -0000	[thread overview]
Message-ID: <CANu=DmjXCY1408eqC6ouSGSL2s61kDrJRwsUZvjdY8h4EDQtGw@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1401271821090.8452@digraph.polyomino.org.uk>

On 27 January 2014 18:22, Joseph S. Myers <joseph@codesourcery.com> wrote:
> On Mon, 27 Jan 2014, Will Newton wrote:
>
>> +     /* longjmp probe expects longjmp first argument (4@r0), second
>> +        argument (-4@r1), and target address (4@r14), respectively.  */
>> +     LIBC_PROBE (longjmp, 3, 4@r0, -4@r1, 4@r14)
>
> I don't know what 4@r0 etc. mean - where is this documented (I don't see
> it in include/stap-probe.h)?  Also, where are the semantics of these
> probes documented (I don't see them in manual/probes.texi)?

None of this seems particularly well-documented as far as I can tell.

The SystemTap probe syntax is covered here:

https://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation

But there's no mention of ARM specifically, and the gdb source seems
to be the place where the syntax is parsed so I wrote to match that.
For example, lr does not seem to be a supported register name but r14
is.

The semantics of the probes is not documented at all as far as I can
tell. Again gdb is the consumer so I looked at the sources there as
well as the comments in the powerpc port of glibc (thanks powerpc
maintainers!). Only the third argument is used by gdb, which is the
target pc.

It would be great if someone who actually knew the details of this for
sure added some docs (i.e. see discussion of longjmp_target probe that
other architectures implement).

-- 
Will Newton
Toolchain Working Group, Linaro

  reply	other threads:[~2014-01-27 20:51 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-27  9:37 Will Newton
2014-01-27 18:22 ` Joseph S. Myers
2014-01-27 20:51   ` Will Newton [this message]
2014-01-27 22:25     ` Joseph S. Myers
2014-01-28 21:35 ` Joseph S. Myers
2014-01-28 22:03   ` Roland McGrath
2014-01-29 10:15   ` Will Newton

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='CANu=DmjXCY1408eqC6ouSGSL2s61kDrJRwsUZvjdY8h4EDQtGw@mail.gmail.com' \
    --to=will.newton@linaro.org \
    --cc=joseph@codesourcery.com \
    --cc=libc-ports@sourceware.org \
    --cc=patches@linaro.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 read-only IMAP folder(s) and NNTP newsgroup(s).