From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12466 invoked by alias); 6 Sep 2009 16:29:08 -0000 Received: (qmail 12458 invoked by uid 22791); 6 Sep 2009 16:29:07 -0000 X-SWARE-Spam-Status: No, hits=-1.4 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_37,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-pz0-f196.google.com (HELO mail-pz0-f196.google.com) (209.85.222.196) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 06 Sep 2009 16:28:50 +0000 Received: by pzk34 with SMTP id 34so483134pzk.25 for ; Sun, 06 Sep 2009 09:28:49 -0700 (PDT) MIME-Version: 1.0 Received: by 10.142.202.21 with SMTP id z21mr473373wff.235.1252254529058; Sun, 06 Sep 2009 09:28:49 -0700 (PDT) In-Reply-To: <4AA1DB2A.1020701@vmware.com> References: <831vmubitq.fsf@gnu.org> <83zl9i9xls.fsf@gnu.org> <4A99909E.7030302@vmware.com> <83ws4m9fhr.fsf@gnu.org> <83skf99ob0.fsf@gnu.org> <4AA1DB2A.1020701@vmware.com> From: Hui Zhu Date: Sun, 06 Sep 2009 16:29:00 -0000 Message-ID: Subject: Re: [RFA/RFC] Add dump and load command to process record and replay To: Michael Snyder Cc: Eli Zaretskii , "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/msg00145.txt.bz2 On Sat, Sep 5, 2009 at 11:29, Michael Snyder wrote: > Hui Zhu wrote: >> >> On Mon, Aug 31, 2009 at 01:58, Eli Zaretskii wrote: >>>> >>>> From: Hui Zhu >>>> Date: Sun, 30 Aug 2009 11:20:32 +0800 >>>> Cc: Michael Snyder , gdb-patches@sourceware.org >>>> >>>>> This all needs to be said in the manual (in a form suitable for the >>>>> manual, omitting the technicalities and describing this from user >>>>> perspective). =A0We cannot just say "dump record log to core file". = =A0So >>>>> I hereby revoke my approval of the patch for the manual. >>>>> >>>> Agree with you, Eli. =A0Do you have more better words on it? =A0You kn= ow >>>> my poor english. =A0:) >>> >>> Something like this: >>> >>> =A0@kindex record dump >>> =A0@kindex rec dump >>> =A0@item record dump [@var{file}] >>> =A0@itemx rec dump [@var{file}] >>> =A0Dump the execution records of the inferior process to the named >>> =A0@var{file}. =A0If not specified, @var{file} defaults to >>> =A0@file{gdb_record.@var{pid}}, where @var{pid} is is the PID of the >>> =A0inferior process. >>> >>> =A0The file created by this command is actually a kind of core file, >>> =A0with an extra section that holds the recorded execution log. =A0The >>> =A0sections usually present in a core file capture the state of the >>> =A0inferior before the recording started, so that the file produced by >>> =A0this command can be used to replay the entire recorded session >>> =A0without the need to restore the initial state by some other means. >>> >>> >> >> Great. =A0Thanks a lot. >> >> I make a new doc patch according to it. >> >> Hui >> >> 2009-08-31 =A0Hui Zhu =A0 >> >> =A0 =A0 =A0 =A0* gdb.texinfo (Process Record and Replay): Document the >> =A0 =A0 =A0 =A0"record dump" commands. >> >> --- >> =A0doc/gdb.texinfo | =A0 16 ++++++++++++++++ >> =A01 file changed, 16 insertions(+) >> >> --- a/doc/gdb.texinfo >> +++ b/doc/gdb.texinfo >> @@ -5214,6 +5214,22 @@ When record target runs in replay mode ( >> =A0subsequent execution log and begin to record a new execution log star= ting >> =A0from the current address. =A0This means you will abandon the previous= ly >> =A0recorded ``future'' and begin recording a new ``future''. >> + >> +@kindex record dump >> +@kindex rec dump >> +@item record dump [@var{file}] >> +@itemx rec dump [@var{file}] >> +Dump the execution records of the inferior process to the named >> +@var{file}. =A0If not specified, @var{file} defaults to >> +@file{gdb_record.@var{pid}}, where @var{pid} is is the PID of the >> +inferior process. >> + >> +The file created by this command is actually a kind of core file, >> +with an extra section that holds the recorded execution log. =A0The >> +sections usually present in a core file capture the state of the >> +inferior before the recording started, so that the file produced by >> +this command can be used to replay the entire recorded session >> +without the need to restore the initial state by some other means. > > Since there is no "record load" command in this version, perhaps > we should say something here about how to reload the file? > > Something like: > > To reload the execution record file, first open it like an > ordinary core file, then use "target record". > > Alternatively, maybe you want to add a new version of > "record load " which will do the necessary, > by first invoking "core ", and then "target > record". > > >> =A0@end table >> > > I am not sure which way is better. Could you help me with it? Thanks, Hui