Difference between revisions of "Todo"

From CRIU
Jump to navigation Jump to search
Line 60: Line 60:
 
| crtools || Restore a process tree || || Need to restore any process tree, which could be created with help PR_SET_CHILD_SUBREAPER and CLONE_PARENT. Processes can share other resources [http://man7.org/linux/man-pages/man2/clone2.2.html clone(2)]. Look at [http://git.criu.org/?p=crtools.git;a=blob;f=test/zdtm/live/static/session02.c;hb=HEAD session02]
 
| crtools || Restore a process tree || || Need to restore any process tree, which could be created with help PR_SET_CHILD_SUBREAPER and CLONE_PARENT. Processes can share other resources [http://man7.org/linux/man-pages/man2/clone2.2.html clone(2)]. Look at [http://git.criu.org/?p=crtools.git;a=blob;f=test/zdtm/live/static/session02.c;hb=HEAD session02]
 
|}
 
|}
 +
 +
[[Category:Development]]

Revision as of 02:12, 8 April 2013

component task assignee comments
crtools stopped tasks - -
crtools/kernel memory snapshot xemul@ need to take mem snapshot in kernel for iterative migration, (probably) rebootless upgrade and HA
crtools restore in namespace - having images taken from live app, need to restore them inside newly created namespace. For PID we'd have to provide our own init, for NET -- setup some veth.
crtools TCP socket migration with changed IP xemul@ 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 Apply-images mode xemul@ 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 Modify restored resources run-time xemul@ Need (probably) some way to alter what is being restored. Usage example -- change the IP address of sockets from task above.
crtools partial migration - migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.)
crtools Shared objects (mm/fs) support avagin@ 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.
kernel Provide own defconfig gorcunov@ suggested by avagin@
crtools Paranoid dumping and restoring - Make paranoid checks for what we dump. E.g. pgid being valid (withing session) and fds drained from parasite are valid
kernel/crtools posix timers skinsbursky@ Need new kernel API for a) listing existing timers and b) fetching timer notify configuration.
crtools Smart paths resolution - 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 - TCP repair TODO
crtools Iptables - This is easy. Need to run ipdables-save and iptables-restore
crtools Multiple namespaces - Need to handle the cases when more than one namespace of one type exists and dump them properly
crtools Migration w/o intermediate disk Adrian Reber -
kernel/crtools TUN/TAP - -
vzkernel/crtools OpenVZ kernel support avagin@ Within 3.5 and RHEL7 port (All patches before 3.8 are here already)
crtools More sockoptions xemul@ SOL_ are done
crtools Bridges in container -
crtools cgroups in container -
crtools/kernel NFS -
crtools/kernel VDSO - issues: VDSO may change between kernels; vsyscall may change between kernels; VDSO mapping should be VDSO mapping, not regular one
crtools Unmap a restorer VMA - Lots of ideas were generated so far.
crtools migrate script - It's not complex, but openvz-like migrate scripts should exists
crtools Asynchronous parasite gorcunov@ Parasite should wait on tsock for commands, not being restarted by crtools
crtools Restore a process tree 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