From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16207 invoked by alias); 17 Jan 2008 01:13:55 -0000 Received: (qmail 16196 invoked by uid 22791); 17 Jan 2008 01:13:55 -0000 X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 17 Jan 2008 01:13:25 +0000 Received: (qmail 31519 invoked from network); 17 Jan 2008 01:13:22 -0000 Received: from unknown (HELO localhost) (jimb@127.0.0.2) by mail.codesourcery.com with ESMTPA; 17 Jan 2008 01:13:22 -0000 To: Vladimir Prus Cc: Michael Snyder , gdb@sources.redhat.com Subject: Re: Questionable breakpoint stepping code References: <200711291535.36950.vladimir@codesourcery.com> <20071130011413.GA10585@adacore.com> <200711301448.04323.vladimir@codesourcery.com> From: Jim Blandy Date: Thu, 17 Jan 2008 01:13:00 -0000 In-Reply-To: (Vladimir Prus's message of "Thu, 13 Dec 2007 19:08:34 +0300") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2008-01/txt/msg00137.txt.bz2 Vladimir Prus writes: > I wonder if you've missed the below email. Can you > tell what you think? Hi, Vlad. This change looks fine to me; please commit. > > Thanks, > Volodya > >> On Friday 30 November 2007 04:14:13 Joel Brobecker wrote: >>> > > I have been away for a week and I still a bit overwhelmed by my email >>> > > backlog that caused me to miss the patch. But if Volodya sends me the >>> > > patch again, I'll give it a whirl. >>> > >>> > Thanks Joel! >>> > Here's the patch. >>> >>> Thanks. I don't know why, but somehow, the patch didn't apply cleanly >>> to HEAD, so I applied it manually. The results were identical after >>> applying and I double-checked that the error never triggered. >> >> Thanks. Michael, do you have any objections to me checking that >> patch in (included before for convenience). >> >> - Volodya >> >> >> * infrun.c (handle_inferior_event): If >> we failed to remove breakpoints, error, >> don't try to increment PC by hand. >> --- >> gdb/infrun.c | 19 +------------------ >> 1 files changed, 1 insertions(+), 18 deletions(-) >> >> diff --git a/gdb/infrun.c b/gdb/infrun.c >> index ad1de6b..b92d0de 100644 >> --- a/gdb/infrun.c >> +++ b/gdb/infrun.c >> @@ -1745,24 +1745,7 @@ handle_inferior_event (struct >> execution_control_state *ecs) >> process until the child exits (well, okay, not >> then either :-) or execs. */ >> if (remove_status != 0) >> - { >> - /* FIXME! This is obviously non-portable! */ >> - write_pc_pid (stop_pc + 4, ecs->ptid); >> - /* We need to restart all the threads now, >> - * unles we're running in scheduler-locked mode. >> - * Use currently_stepping to determine whether to >> - * step or continue. >> - */ >> - /* FIXME MVS: is there any reason not to call resume()? */ >> - if (scheduler_mode == schedlock_on) >> - target_resume (ecs->ptid, >> - currently_stepping (ecs), TARGET_SIGNAL_0); >> - else >> - target_resume (RESUME_ALL, >> - currently_stepping (ecs), TARGET_SIGNAL_0); >> - prepare_to_wait (ecs); >> - return; >> - } >> + error (_("Cannot step over breakpoint hit in wrong thread")); >> else >> { /* Single step */ >> if (!ptid_equal (inferior_ptid, ecs->ptid))