[CRIU] Lazy-restore design discussion - round 3

Adrian Reber adrian at lisas.de
Tue Apr 19 02:39:34 PDT 2016


The new summary:

 * On the source system there will be process listening on a network
   socket. In the first implementation it will use a checkpoint
   directory as the basis for the UFFD pages and in a later version
   we will add the possibility to transfer the pages directly from the
   checkpointed process.

 * The transport protocol between the source system and the UFFD daemon
   on the destination will be page-server based (something like Mike's patch)

 * The UFFD daemon will be able to handle multiple restore requests
   (also Mike's patch "lazy-pages: handle multiple processes")
   to restore a whole process tree.

 * For each restored process tree a new UFFD daemon is started.

 * The UFFD daemon is either started manually on the command-line
   or automatically started by the restore process.

 * The UFFD daemon reads all required information (besides PID and UFFD)
   from the checkpoint directory.

 * The UFFD daemon is the instance which decides which pages are pushed
   when via UFFD into the restored process.

Right now I am trying to find the minimal required points to get this
implemented. Once this is done we can continue from there and start more
discussions.

		Adrian


More information about the CRIU mailing list