From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20486 invoked by alias); 8 Sep 2009 07:53:29 -0000 Received: (qmail 20430 invoked by uid 22791); 8 Sep 2009 07:53:29 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-pz0-f181.google.com (HELO mail-pz0-f181.google.com) (209.85.222.181) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 08 Sep 2009 07:53:20 +0000 Received: by pzk11 with SMTP id 11so1599475pzk.3 for ; Tue, 08 Sep 2009 00:53:18 -0700 (PDT) MIME-Version: 1.0 Received: by 10.142.152.26 with SMTP id z26mr595297wfd.201.1252396391104; Tue, 08 Sep 2009 00:53:11 -0700 (PDT) In-Reply-To: References: <4AA5D713.1060305@vmware.com> <20090908065843.GO30677@adacore.com> From: Hui Zhu Date: Tue, 08 Sep 2009 07:53:00 -0000 Message-ID: Subject: Re: [RFA] let record_resume fail immediately on error To: Joel Brobecker , Michael Snyder Cc: "gdb-patches@sourceware.org" Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-09/txt/msg00191.txt.bz2 On Tue, Sep 8, 2009 at 15:25, Hui Zhu wrote: > If GDB call error in record_resume, user cannot keep debug the inferior. > > Hui > > On Tue, Sep 8, 2009 at 15:23, Hui Zhu wrote: >> The "record_resume_error" in gdb-cvs is to make user after get a error >> of record_message, they can "record stop" close the record and keep >> debug the inferior. >> >> Thanks, >> Hui >> >> On Tue, Sep 8, 2009 at 14:58, Joel Brobecker wrot= e: >>>> =A0 =A0if (!RECORD_IS_REPLAY) >>>> =A0 =A0 =A0{ >>>> =A0 =A0 =A0 =A0if (do_record_message (get_current_regcache ())) >>>> - =A0 =A0 =A0 =A0{ >>>> - =A0 =A0 =A0 =A0 =A0record_resume_error =3D 0; >>>> - =A0 =A0 =A0 =A0} >>>> - =A0 =A0 =A0else >>>> - =A0 =A0 =A0 =A0{ >>>> - =A0 =A0 =A0 =A0 =A0record_resume_error =3D 1; >>>> - =A0 =A0 =A0 =A0 =A0return; >>>> - =A0 =A0 =A0 =A0} >>>> + =A0 =A0 internal_error (__FILE__, __LINE__, >>>> + =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 _("record_resume: do_record_= message failed.")); >>>> + >>> >>> Forgive me if I'm wrong, as I don't know the record.c code at all, but >>> I cannot help but think that the internal_error is suspicious here. >>> Why is this an internal_error? >>> >>> -- >>> Joel >>> >> > Hi guys, I make a patch that make "record_resume_error" work better. I did some test. It seems better than before. Please help me with it. Thanks, Hui 2009-09-08 Hui Zhu * record.c (record_wait): Change TARGET_SIGNAL_ABRT to TARGET_SIGNAL_0. --- record.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/record.c +++ b/record.c @@ -590,7 +590,7 @@ record_wait (struct target_ops *ops, { /* If record_resume get error, return directly. */ status->kind =3D TARGET_WAITKIND_STOPPED; - status->value.sig =3D TARGET_SIGNAL_ABRT; + status->value.sig =3D TARGET_SIGNAL_0; return inferior_ptid; }