Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@codesourcery.com>
To: gdb@sourceware.org
Cc: Michael Snyder <msnyder@vmware.com>,  teawater <teawater@gmail.com>
Subject: Re: Some ideas of displaced step function
Date: Fri, 03 Oct 2008 20:57:00 -0000	[thread overview]
Message-ID: <200810032157.35989.pedro@codesourcery.com> (raw)
In-Reply-To: <48E6644F.80604@vmware.com>

On Friday 03 October 2008 19:28:31, Michael Snyder wrote:
> Pedro Alves wrote:
> > On Friday 03 October 2008 01:31:54, Michael Snyder wrote:
> > 
> >> Why are we using displaced-stepping when we're not async?
> > 
> > s/async/non-stop mode/g.  All-stop + async doesn't need
> > it either.  This feature was added for non-stop, as a way to
> > avoid lifting breakpoints from the inferior when stepping over
> > a breakpoint, otherwise, other running threads could miss them.
> > 

> > No other reason to have it always on other than for more
> > exposure, I guess.  Time to pull the plug?
> > 
> > I'd still like to have a way to enable displaced-stepping
> > in all-stop mode, as it's very useful for testing.
> 
> I certainly don't mind 'enable', but maybe it doesn't
> need to always be enabled by default?
> 

There, you lost me.  :-)  Perhaps we're saying the same thing.  What
I meant was that sneaking a `&& non_stop' here:

 static int
 use_displaced_stepping (struct gdbarch *gdbarch)
 {
   return (can_use_displaced_stepping
+           && non_stop
           && gdbarch_displaced_step_copy_insn_p (gdbarch));
 }

... would make us use displaced stepping only in non-stop mode,
so the problems we've been hearing about are sidestepped.  This
puts the onus of making displaced stepping work on
targets/systems/modes that need it.

But, then one can't use displaced stepping in all-stop mode, without
hacking the code, that is.  It feels like if we make this change, we
should either give new meaning to the current
`maint set can-use-displaced-stepping' command, replace it with
some other command, or plainly add a new command in addition to
the current.

-- 
Pedro Alves


      reply	other threads:[~2008-10-03 20:57 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-02 22:05 teawater
2008-10-03  0:33 ` Michael Snyder
2008-10-03 13:53   ` Pedro Alves
2008-10-03 18:30     ` Michael Snyder
2008-10-03 20:57       ` Pedro Alves [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=200810032157.35989.pedro@codesourcery.com \
    --to=pedro@codesourcery.com \
    --cc=gdb@sourceware.org \
    --cc=msnyder@vmware.com \
    --cc=teawater@gmail.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