From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11153 invoked by alias); 14 Oct 2009 02:28:16 -0000 Received: (qmail 11145 invoked by uid 22791); 14 Oct 2009 02:28:15 -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-px0-f202.google.com (HELO mail-px0-f202.google.com) (209.85.216.202) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 14 Oct 2009 02:28:09 +0000 Received: by pxi40 with SMTP id 40so909203pxi.24 for ; Tue, 13 Oct 2009 19:28:08 -0700 (PDT) MIME-Version: 1.0 Received: by 10.142.250.3 with SMTP id x3mr633091wfh.23.1255487288087; Tue, 13 Oct 2009 19:28:08 -0700 (PDT) In-Reply-To: <20091014021007.GO5272@adacore.com> References: <4ABE5E8D.8080209@vmware.com> <20090928160728.GB9003@adacore.com> <20090929212910.GG6362@adacore.com> <20091014021007.GO5272@adacore.com> From: Hui Zhu Date: Wed, 14 Oct 2009 02:28:00 -0000 Message-ID: Subject: Re: [RFA] let record_resume fail immediately on error To: Joel Brobecker Cc: Michael Snyder , "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-10/txt/msg00295.txt.bz2 Hi Joel, I think explain is very hard to make you happy with this patch. I am really not good at it. Sorry for it. Could you please try the example? For example: cat 1.c #include #include #include #include #include #include #include #include #include int main(int argc,char *argv[],char *envp[]) { asm ("rdtsc"); return (0); } Without the fix error patch: we will get: gdb ./a.out (gdb) start During symbol reading, DW_AT_name missing from DW_TAG_base_type. Temporary breakpoint 1 at 0x8048352: file 4.c, line 14. Starting program: /home/teawater/gdb/bgdbno/gdb/a.out Temporary breakpoint 1, main (argc=3D, argv=3D, envp=3D) at 4.c:14 14 asm ("rdtsc"); (gdb) record (gdb) c Continuing. Process record doesn't support instruction rdtsc. Process record doesn't support instruction 0xf31 at address 0x8048352. Process record: failed to record execution log. Program received signal SIGABRT, Aborted. main (argc=3D, argv=3D, envp=3D) at 4.c:14 14 asm ("rdtsc"); (gdb) c Continuing. Program terminated with signal SIGABRT, Aborted. The program no longer exists. (gdb) record stop Process record is not started. Thanks, Hui On Wed, Oct 14, 2009 at 10:10, Joel Brobecker wrote: > Hui, > > It looks like you might be waiting for input from someone, or for > approval? I confess that I'm still completely confused as to what > the problem is and how you're resolving it. =A0I don't want to be > the one slowing you down, so if Michael is happy, I'm happy. =A0But > if you'd like me to take a look, can you try to explain the issue > in a different way? > > For instance, I asked: > >> In other words: If an error occurs during recording, somehow >> the inferior "runs away", meaning runs until completion? >> Do we lose the process record? > > I was mentioning this as being the current behavior, which > presumably is wrong. =A0Am I correct? > > I also asked: > >> Based on the transcript of the session *with* the patch you propose, >> it looks like GDB is now just stuck on that instruction that it does >> not know how to record. Is that really progress? > > I am now refering to the situation *AFTER* your patch is applied. > I couldn't understand the answer to sent or how it was relevant to > my question. > > -- > Joel >