Apply the patch file to the kernel and rebuild, the patch is against
Linux version 0.99.14d, but changes to existing kernel files are
absolutely minimal, here is all you have to do:

1. Add restart.o to the list of object files in fs/Makefile:

OBJS=   open.o read_write.o inode.o devices.o file_table.o buffer.o super.o \
        block_dev.o stat.o exec.o pipe.o namei.o fcntl.o ioctl.o \
        select.o fifo.o locks.o filesystems.o restart.o $(BINFMTS)


2. Make get_super() accessible outside of the fs/super.c module:

At about line 89 change

	static struct super_block * get_super(dev_t dev)

to

	struct super_block * get_super(dev_t dev)

3. Add the new executable format to fs/exec.c:

At about line 730 add an external definition for load_restart_binary()

	extern int load_restart_binary(struct linux_binprm *,
				       struct pt_regs * regs);

and add an entry to the function table just below this line:

/* Here are the actual binaries that will be accepted  */
struct linux_binfmt formats[] = {
        {load_aout_binary, load_aout_library},
#ifdef CONFIG_BINFMT_ELF
        {load_elf_binary, load_elf_library},
#endif
        {NULL, NULL}
};

/* Here are the actual binaries that will be accepted  */
struct linux_binfmt formats[] = {
        {load_aout_binary, load_aout_library},
#ifdef CONFIG_BINFMT_ELF
        {load_elf_binary, load_elf_library},
#endif
        {load_restart_binary, NULL},
        {NULL, NULL}
};

Those are the only changes to existing files.....

------------------------------------------------------------------

Type make in this directory to build a chkpnt binary. There is no dependency
on the mod being installed for this program to run, but it does need the
header file /usr/include/linux/restart.h to build.
