This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch, rfc, rft] Multi-threaded single-step vs. breakpoint problems (prepare_to_proceed)
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb-patches at sourceware dot org
- Date: Mon, 3 Sep 2007 16:16:09 -0400
- Subject: Re: [patch, rfc, rft] Multi-threaded single-step vs. breakpoint problems (prepare_to_proceed)
- References: <20070802194220.GB6563@caradoc.them.org> <200708031654.l73GsY1Q018103@d12av02.megacenter.de.ibm.com>
On Fri, Aug 03, 2007 at 06:54:34PM +0200, Ulrich Weigand wrote:
> ChangeLog:
>
> * infrun.c (stepping_past_breakpoint): New global variable.
> (stepping_past_breakpoint_ptid): Likewise.
> (prepare_to_proceed): Add STEP parameter. Do not check for Ctrl-C.
> Only switch threads if we need to single-step over a breakpoint hit
> in the previously selected thread. If stepping, remember previous
> thread to switch back to in STEPPING_PAST_BREAKPOINT[_PTID]. Call
> switch_to_thread instead of copying its contents.
> (proceed): Pass STEP to prepare_to_proceed. Always set ONEPROC if
> prepare_to_proceed returns true.
> (init_wait_for_inferior): Reset STEPPING_PAST_BREAKPOINT.
> (context_switch): Call switch_to_thread.
> (handle_inferior_event): Switch back to previous thread if requested
> in STEPPING_PAST_BREAKPOINT[_PTID] by prepare_to_proceed.
> * gdbthread.h (switch_to_thread): Add prototype.
> * thread.c (switch_to_thread): Make global.
No one else has commented on this patch in the last month; I think you
should probably commit it (though you may wish to wait until after
the release branch - I've no preference).
--
Daniel Jacobowitz
CodeSourcery