Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Prateek Saxena <prateeksaxena@gmail.com>
To: greg@bronevetsky.com
Cc: gdb@sources.redhat.com, drow@false.org
Subject: RE: Checkpoint-restart with different code
Date: Tue, 13 Dec 2005 19:58:00 -0000	[thread overview]
Message-ID: <4dd65b150512131158q694022c1kba1a5d12f76a3df0@mail.gmail.com> (raw)

Hi,

I have a stable kernel patch for Linux 2.6.14.3 and Linux 2.4.31 that
allows a process to mmap any region of the tracee's process address
space, through the /proc/[pid]/mem file.

It allows the debugger/tracer to write/read change all parts of the
program memory of traced process. You could you this interface to
modify the code memory being read by the traced process, by simply
mmaping the code/stack/data page in the checkpointer's memory, and
writing to it.

I have tested some large tracer's with this, and the fsx testsuite.
The patches should be available for download in the next week or so. I
can send the link as soon as I upload them.

-- Prateek Saxena
   Department of Computer Science,
   Stony Brook University.

Greg Bronevetsky wrote:

> I see that there's been some discussion on this list on checkpointing techniques > that may be included in gdb. My research group at Cornell is working on a >number of such checkpointers for both sequential and parallel programs and we >recently decided to try a more challenging variant of checkpointing where the >user can take a checkpoint of their program, modify their source code a bit (add >remove stack variables, move function calls around a bit and a few other things) >and then resume computation using the modified code. This seems to be very >useful for debugging long-running applications since the user would be able to >work around the bug without losing a week's or month's worth of results. (can >happen in high-performance computing) Similarly, its useful for situations where >your execution is in some particularly buggy corner case and you want to keep >making modifications and trying them out without having to guide the program's >execution back into that corner case after every code change.

>My question is, has anybody heard of anything that can do this?
Obviously, this >kind of checkpointing would require compiler support,
so gdb wouldn't have done >this, but have you heard of any
systems/research that has addressed this >question? Thanks.

>--
>Greg Bronevetsky
>490 Rhodes Hall


             reply	other threads:[~2005-12-13 19:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-13 19:58 Prateek Saxena [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-12-09 21:58 Greg Bronevetsky
2005-12-09 22:08 ` Daniel Jacobowitz
2005-12-10  1:36   ` Randolph Chung
2005-12-10 20:34   ` Greg Bronevetsky
2005-12-11  3:53     ` Daniel Jacobowitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4dd65b150512131158q694022c1kba1a5d12f76a3df0@mail.gmail.com \
    --to=prateeksaxena@gmail.com \
    --cc=drow@false.org \
    --cc=gdb@sources.redhat.com \
    --cc=greg@bronevetsky.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox