Balbir Singh wrote: > * Oren Laadan <orenl@xxxxxxxxxxxxxxx> [2008-12-29 04:16:14]: > >> Create trivial sys_checkpoint and sys_restore system calls. They will >> enable to checkpoint and restart an entire container, to and from a >> checkpoint image file descriptor. >> >> The syscalls take a file descriptor (for the image file) and flags as >> arguments. For sys_checkpoint the first argument identifies the target >> container; for sys_restart it will identify the checkpoint image. >> >> A checkpoint, much like a process coredump, dumps the state of multiple >> processes at once, including the state of the container. The checkpoint >> image is written to (and read from) the file descriptor directly from >> the kernel. This way the data is generated and then pushed out naturally >> as resources and tasks are scanned to save their state. This is the >> approach taken by, e.g., Zap and OpenVZ. >> >> By using a return value and not a file descriptor, we can distinguish >> between a return from checkpoint, a return from restart (in case of a >> checkpoint that includes self, i.e. a task checkpointing its own >> container, or itself), and an error condition, in a manner analogous >> to a fork() call. >> >> We don't use copyin()/copyout() because it requires holding the entire > > ^^^^^^^^^^^^^^^^^^^ Do you mean get_user_pages(), > copy_to/from_user()? Yes, I meant copy_to/from_user() ... Oren. -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html