Todo

From CRIU
Revision as of 13:48, 30 January 2015 by Xemul (talk | contribs)
Jump to navigation Jump to search
component task complexity potential/willing assignee comments
crtools Restore tasks into fresh new pid namespace easy - A thing to worry about is this new namespace's init task.
crtools Rollback tree state medium -
crtools AIO with pending events medium -
crtools restore mountpoints hard - -
crtools lazy migration using userfaultd medium xemul -
crtools dump tasks from cgroup easy - Currently criu dumps a subtree from given pid
crtools speed up logging medium Cyrill Synchronous formatting and writes to log files slow things down (Logging)
crtools sanitize logging messages hard - Currently log messages are placed w/o any logic. Need to improve that ... somehow.
crtools support OFD posix locks easy -
crtools optimize kcmp calls medium - For fs/fdt/vm/etc we can pre-generate ID based on objects that live on them. If pre-ID matches, then call kcmp.
crtools Shmem changes tracking medium -
crtools Page transfer filters medium Ruslan Kuprieiev Packing or encrypting the data would be nice. Maybe it's purely for P.Haul?
crtools FUSE hard -
crtools 32-bit tasks hard Cyrill
crtools Support one of MPI implementations hard Adrian Reber worth starting with OpenMPI
crtools Generate task's core file out of images medium - CRIT
crtools Modify restored resources run-time medium - CRIT Need (probably) some way to alter what is being restored. Usage example -- change the IP address of sockets from task above.
crtools TCP socket migration with changed IP medium - CRIT it might make sense to migrate a tcp connection on a box with changed IP address _if_ both boxes are NAT-ed to the destination. We will then have to go to NAT box and fix the conntracks, but this might make sense.
crtools Applying images hard xemul@ w/ students Think about ability to take images and apply them to a living task(s). E.g. -- repopulate fdtable according to data from image. Another use-case -- when doing partial migration we'll need to modify one part to switch from pipes to sockets
crtools Partial migration hard - migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.)
crtools Shared objects (mm/fs) support medium - Now we have the kcmp syscall and can do it. The first candidate is mm sharing, as we do know, that MySQL does so sometimes.
crtools Smart paths resolution hard - Need a way to resolve paths to overmounted files. There are two ways: 1. Move mounts, that overlap the desired path temprarily. 2. When creating a new mount pre-open an fd keeping the mountpoint. Later, do accurate path resolve and call openat() on proper mountpoint fd
kernel/crtools TCP repair fixes hard - TCP repair TODO
crtools Bridges in container medium -
crtools VLANs in containers medium -
crtools PPP support medium -
crtools/kernel DelayFS for NFS/Fuse migration hard -
kernel Seamless kernel upgrade hard xemul
crtools/kernel NFS hard - Probably depends on DelayFS
crtools Validate .img files easy - CRIT For a given set of image files check, that they are in "restorable" shape
crtools Restore a process tree hard - Need to restore any process tree, which could be created with help PR_SET_CHILD_SUBREAPER and CLONE_PARENT. Processes can share other resources clone(2). Look at session02
crtools X app hard - Dump/restore of graphical applications
crtools/kernel Undo semaphores medium Cyrill Gorcunov Require mods from both sides -- criu and kernel
crtools More detailed RPC fail codes easy - Currently only 3 typical errors are reported(see include/cr-errno.h)
kernel/criu fsnotify queues hard - Fsnotify