Re: [RFA] Submit process record and replay fourth time, 0/8

Hui Zhu
2009-03-30T15:17:33Z

Hi Marc,

I think most of issue that you got is about the reverse debug control
part. This is not in the p record patches. The reverse debug include
reverse debug control part already in cvs-head.
For example, the 3 bugs that you sent to maillist are all for reverse
debug control part. But not for p record.

Process record just a target that support reverse debug function. It
depend on reverse debug function.
Actually, process record target was designed and developed together
with reverse debug (Michael and me).

And I think this is a good reason for let process record in now.
Reverse debug function had already checked in cvs-head a lot of month.
It will have a lot of customers after 7.0 release. I think it need a
big and clear test.
Now, remote target support reverse debug in cvs-head. The gdb stubs
support it are vmware, simics and gdbreplay.
So, just process record can use reverse debug in host directly. And
there is a testsuite for reverse debug and process record called
gdb.twreverse (This a temp name) in branch reverse-20081226-branch.
It can be very easy to porting to cvs-head. And we can add more test
(include for MI and eclipse) to increase the testsuit, p record and
reverse debug.

So, I think let process record in can help move forward. :)

Thanks,
Hui

On Mon, Mar 30, 2009 at 21:50, Marc Khouzam <marc.khouzam@ericsson.com> wrote:
> Hi Hui,
>
> as you know, I am a big fan of your RecordAndReplay enhancements.
> In fact, I just demoed it at EclipseCon to show how we can do Reverse
> Debugging in the CDT.  People were very very interested!
>
> However, I think there are still a few bugs.  These bugs may be hard
> to notice when working from the command line, but when working in Eclipse
> they can be seen easily.  Those bugs are mostly unexpected behavior such
> as jumping too far backwards.  They also happen more easily when using
> a program that has a bit of complexity.  For example, the recursive
> bug that I found last week.
>
> Do you have access to eclipse?  We can work together to have you try
> the reverse debugging that I added to CDT, so that you can work with
> your patches more intensely and test them even better.
>
> I would really like to see your patches in GDB 7.0, so maybe using
> Eclipse to test it can help move forward.  What do you think?
>
> Marc
>
>
>> -----Original Message-----
>> From: Hui Zhu [mailto:teawater@gmail.com]
>> Sent: Monday, March 30, 2009 1:34 AM
>> To: Pedro Alves; Marc Khouzam; Michael Snyder; Thiago Jung
>> Bauermann; Eli Zaretskii; Mark Kettenis
>> Cc: gdb-patches@sourceware.org
>> Subject: Re: [RFA] Submit process record and replay fourth time, 0/8
>>
>> Hi guys,
>>
>> I am not sure your are reviewing the p record patches or done.
>>
>> Do you think all of them are ok to in?  :)
>>
>>
>> Thanks,
>> Hui
>>
>>
>> On Sat, Mar 21, 2009 at 23:58, Hui Zhu <teawater@gmail.com> wrote:
>> > Hi guys,
>> >
>> > After third time submit, there are a lot of change with
>> process record
>> > and replay.  So I submit fourth time to make it clear to review.
>> >
>> > For this time, Most of changes were updated follow cvs head
>> and a lot
>> > of format fixes.  Patch for target.c was removed.  Record.c was
>> > updated a lot of parts according to the ideas of Pedro (Much
>> > appreciated).
>> > Thanks for help of everybody in the maillist.
>> >
>> > Process record and replay make gdb can record inferior
>> execute log and
>> > replay (include reverse debug).
>> > Now, it support I386-Linux single-thread inferior native debug.
>> >
>> > I've divided this patch into eight sections, for ease of review.
>> > They group as:
>> > 1) Architecture support layer (gdbarch.sh, gdbarch.c, gbarch.h).
>> > 2) New stratum of strata in target layer (target.h).
>> > 3) Process record and replay target (record.c, record.h,
>> Makefile.in).
>> > 4) Process record and replay for Linux (linux-record.c,
>> > linux-record.h, Makefile.in, configure.tgt).
>> > 5) Event handling (infrun.c).
>> > 6) Intel 386 target-dependent stuff (i386-tdep.c, i386-tdep.h).
>> > 7) Target-dependent code for GNU/Linux i386 (i386-linux-tdep.c).
>> > 8) User interface and documentation.
>> >
>> > For the NEWS:
>> > * Process record and replay
>> >
>> >  In a architecture environment that supports ``process record and
>> >  replay'', ``process record and replay'' target can record a log of
>> >  the process execution, and replay it with both forward and reverse
>> >  execute commands.
>> >
>> > These patches be tested with testsuite gdb.twreverse in branch
>> > reverse-20081226-branch.
>> >
>> > Attachment is the compressed patches package to make get
>> all patches easy.
>> >
>> > Thanks,
>> > Hui
>> >
>>
>