Re: [RFA] checkpoint / restart, and multi-fork debugging

Tom Tromey
2005-12-09T08:05:18Z

>>>>> "Michael" == Michael Snyder <msnyder@redhat.com> writes:

Michael> OK, ready for submission.
Michael> This patch adds two new functionalities for linux native debugging:
Michael> * Multiple fork debugging, and
Michael> * Checkpoint / Restart.

I know nothing about the patch of course, but this looks like an
excellent feature. One thing that amazes me about it is that it is
conceptually simple but I don't recall ever hearing it as an idea
until recently.

One thing I didn't see mentioned in the docs is the effect on gdb of a
'restart'. I assume that new breakpoints, watchpoints, etc, are kept
instead of reverting to the state at the checkpoint. Maybe this is
worth mentioning.

A nice problem this solves is handling watchpoints when the system has
address space randomization. I run into this all the time when
debugging -- back before this feature was added to the OS I would put
a fair amount of effort into finding some address to watch in one
debug session, then restart the inferior with a watchpoint set.
Randomization made this impossible; but with this patch I could just
make a checkpoint at 'main'.

Tom