This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [FYI] tutorial for process record and reverse debugging


Greg Law wrote:
Marc Khouzam wrote:

[...]
Or do you imagine it being the default?

FWIW, early versions of UndoDB operated in "Marc-mode".  We changed
it because replay mode and record are quite different, particularly
w.r.t. to the program's interaction with the outside world.
"Silent" transition from replay to record mode could be quite
confusing/surprising.
In cases where the program does interact with the outside world, I
agree that "auto-mode" could be confusing. In fact, "record mode" may not be the one we want in this case either. For instance, in some cases I may want to re-execute instructions that affect the
outside world, even if I'm gone backwards. In this case I would want
to use the recorded data to go backwards, but never to go forward
(never use "replay mode").

I'm not completely sure of the behaviour of process record here, but
UndoDB in replay mode is completely "neutered", in that the results of
all system calls are 'synthesised'. So if, say, in record mode your
program unlinks a file, then in replay mode the fact the filename is no
longer present on the filesystem doesn't matter - we don't really do an unlink, we just replay the results of whatever unlink returned when in record mode.

It's the same for process record.




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]