kmacy at fsmware.com
Fri Oct 10 21:31:07 PDT 2003
> Patch set 6 works like a charm! If you get stuck on the file handle
> issue I would be pleased to help out there. Also note that you should
> not need to use any ELF/EXEC code at all except for the saved register
> state once you record the file descriptor state and (if not already
> recorded) related descriptor mappings, the restore code would be
> image based.
I hope this isn't a stupid question, but how do I get the inode/dev_t for
binary of the process itself? I'm sure I can find it, but you probably
know off hand.
> If you want to get the kernel hook in for the default signal / module
> support and add the SIGCKPT and SIGCKPTEXIT signals to sys/signal.h,
> We can commit that early so people doing ongoing testing of the module
> do not have to patch their kernels.
I'll see if I can't get that working by tonight. There are couple of open
questions for non-checkpoint-aware apps. What should the checkpoint be
called and where should it be put? Those should probably both be sysctls,
but for the moment I think ckpt.<pid> is a reasonable name, and the
current working directory is a reasonable place.
> FreeBSD-5 has added signal 32, so I recommend we add this to sys/signal.h:
> #if __BSD_VISIBLE
> #define SIGTHR 32 /* Thread interrupt (FreeBSD-5 reserved) */
> #define SIGCKPT 33 /* check point and continue */
> #define SIGCKPTEXIT 34 /* check point and exit */
This works for me.
More information about the Kernel