Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Michael Snyder <Michael.Snyder@palmsource.com>
To: Daniel Jacobowitz <drow@false.org>
Cc: gdb@sourceware.org
Subject: Re: Single stepping and threads
Date: Thu, 30 Nov 2006 23:38:00 -0000	[thread overview]
Message-ID: <1164929701.14460.34.camel@localhost.localdomain> (raw)
In-Reply-To: <20061129133637.GB28834@nevyn.them.org>

On Wed, 2006-11-29 at 08:36 -0500, Daniel Jacobowitz wrote:
> On Wed, Nov 29, 2006 at 01:40:49PM +0100, Mark Kettenis wrote:
> > Are you talking about stepi or step?
> > For step we should be very careful, since on some platforms the dynamic
> > linker may play games with locks and we risk a deadlock if we don't let
> > the other threads run.
> 
> That's the second part of the question :-)  The current setting of
> "set scheduler-locking" applies to whenever proceed() is told to step,
> rather than when the user says "step".  So it affects stepi always and
> step within a source line, but not step over a function. 

That was intentional -- a compromise between more stringent locking, 
and the tendency to deadlock.

The idea was, "a function call is too long to keep the scheduler
locked, unles you insist on locking it down completely (schedlock on)".


>  I talked
> about "stepping" over prologues and over functions without debug info;
> I hadn't thought about skipping shared library trampolines, but I
> can definitely see how that would be a problem.
> 
> I don't like the user interface here; we say "step" and it will
> sometimes run one thread and sometimes run all threads and it's hard to
> explain which.  But we may not be able to do better without adding
> unacceptable risk of deadlocks :-(
> 


  reply	other threads:[~2006-11-30 23:38 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-29  5:29 Daniel Jacobowitz
2006-11-29  5:58 ` Joel Brobecker
2006-11-29 13:25   ` Daniel Jacobowitz
2006-11-29 16:38     ` Joel Brobecker
2006-11-30 13:54       ` Daniel Jacobowitz
2006-11-30 23:36       ` Michael Snyder
2006-11-30 23:54         ` Joel Brobecker
2006-12-01  1:02           ` Daniel Jacobowitz
2006-12-01 22:43           ` Michael Snyder
2006-12-02 16:27         ` Rob Quill
2006-12-02 16:33           ` Daniel Jacobowitz
2006-12-02 16:36           ` Joel Brobecker
2006-12-04 19:50           ` Michael Snyder
2006-11-30  8:44     ` Robert Dewar
2006-11-30 23:32     ` Michael Snyder
2006-11-30 23:26   ` Michael Snyder
2006-11-30 23:31     ` Joel Brobecker
2006-11-29 12:41 ` Mark Kettenis
2006-11-29 13:36   ` Daniel Jacobowitz
2006-11-30 23:38     ` Michael Snyder [this message]
2006-11-30 23:22 ` Michael Snyder

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=1164929701.14460.34.camel@localhost.localdomain \
    --to=michael.snyder@palmsource.com \
    --cc=drow@false.org \
    --cc=gdb@sourceware.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