From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: James Yang <James.Yang@freescale.com>
Cc: scottwood@freescale.com, linuxppc-dev@lists.ozlabs.org
Subject: Re: [RFC][PATCH 2/2] powerpc/booke: revert PTRACE_SINGLEBLOCK to BookE behavior
Date: Sat, 06 Jul 2013 10:21:55 +1000 [thread overview]
Message-ID: <1373070115.4446.13.camel@pasglop> (raw)
In-Reply-To: <1373062265-4267-3-git-send-email-James.Yang@freescale.com>
On Fri, 2013-07-05 at 17:11 -0500, James Yang wrote:
> A BookE branch taken debug exception followed by a single step does not
> accurately simulate Server's branch execute debug exception. BookE's
> branch taken debug exception stops before the branch is to be executed
> and only happens if the branch will actually be taken. Server's branch
> execute trace exception stops on the instruction after the branch
> executes, regardless of whether or not the branch redirected the program
> counter.
>
> The existing PTRACE_SINGLEBLOCK support for BookE hardcodes a single
> step after the branch taken exception is taken in order to simulate
> Server's behavior, but this misses fall-through branch instructions
> (i.e., branches that are NOT taken). Also, the si_code became masked as
> TRAP_TRACE instead of TRAP_BRANCH.
But that changes the user visible behaviour, won't that break gdb
expectations ?
Another way to "fix" it is to instead use lib/sstep.c to emulate the
single step maybe ?
On the other hand, I tend to think that trapping before the branch is
actually more useful especially if you don't have the CFAR register.
Cheers,
Ben.
next prev parent reply other threads:[~2013-07-06 0:22 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-05 22:11 [RFC][PATCH 0/2] powerpc/booke: PTRACE_SINGLEBLOCK support for BookE James Yang
2013-07-05 22:11 ` [RFC][PATCH 1/2] powerpc/booke: extend PTRACE_SINGLEBLOCK for BookE Branch Taken Debug James Yang
2013-07-09 16:53 ` Scott Wood
2013-07-05 22:11 ` [RFC][PATCH 2/2] powerpc/booke: revert PTRACE_SINGLEBLOCK to BookE behavior James Yang
2013-07-06 0:21 ` Benjamin Herrenschmidt [this message]
2013-07-06 5:01 ` James Yang
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=1373070115.4446.13.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=James.Yang@freescale.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=scottwood@freescale.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.