Line 3: |
Line 3: |
| ! component | | ! component |
| ! task | | ! task |
| + | ! complexity |
| ! assignee | | ! assignee |
| ! comments | | ! comments |
| |- | | |- |
− | | crtools || support OFD posix locks || - || | + | | crtools || support OFD posix locks || easy || - || |
| |- | | |- |
− | | crtools || optimize kcmp calls || - || 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 || 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 || - || | + | | crtools || Shmem changes tracking || medium || - || |
| |- | | |- |
− | | crtools || Page transfer filters || Ruslan Kuprieiev || Packing or encrypting the data would be nice | + | | crtools || Page transfer filters || medium || Ruslan Kuprieiev || Packing or encrypting the data would be nice |
| |- | | |- |
− | | crtools || FUSE || - || | + | | crtools || FUSE || hard || - || |
| |- | | |- |
− | | crtools || 32-bit tasks || Cyrill || | + | | crtools || 32-bit tasks || hard || Cyrill || |
| |- | | |- |
− | | crtools || Support one of MPI implementations || Adrian Reber || worth starting with OpenMPI | + | | crtools || Support one of MPI implementations || hard || Adrian Reber || worth starting with OpenMPI |
| |- | | |- |
− | | crtools || Generate task's core file out of images || - || - | + | | crtools || Generate task's core file out of images || medium || - || |
| |- | | |- |
− | | crtools || Convert images to JSON and back || - || - | + | | crtools || Convert images to JSON and back || easy || - || |
| |- | | |- |
− | | crtools || Modify restored resources run-time || - || Need (probably) some way to alter what is being restored. Usage example -- change the IP address of sockets from task above. | + | | crtools || Modify restored resources run-time || medium || - || 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 || - || 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 || TCP socket migration with changed IP || medium || - || 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]] || 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 || [[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 || - || migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.) | + | | crtools || Partial migration || hard || - || migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.) |
| |- | | |- |
− | | crtools || Shared objects (mm/fs) support || - || 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 || 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 || - || 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 | + | | 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 || - || [[TCP repair TODO]] | + | | kernel/crtools || TCP repair fixes || hard || - || [[TCP repair TODO]] |
| |- | | |- |
− | | crtools || Bridges in container || - || | + | | crtools || Bridges in container || medium || - || |
| |- | | |- |
− | | crtools || VLANs in containers || - || | + | | crtools || VLANs in containers || medium || - || |
| |- | | |- |
− | | crtools || PPP support || - || | + | | crtools || PPP support || medium || - || |
| |- | | |- |
− | | crtools/kernel || DelayFS for NFS/Fuse migration || - || | + | | crtools/kernel || DelayFS for NFS/Fuse migration || hard || - || |
| |- | | |- |
− | | kernel || Seamless kernel upgrade || Vladimir Davydov || | + | | kernel || Seamless kernel upgrade || hard || Vladimir Davydov || |
| |- | | |- |
− | | crtools/kernel || NFS || - || | + | | crtools/kernel || NFS || hard || - || Probably depends on DelayFS |
| |- | | |- |
− | | crtools || Validate .img files || - || For a given set of image files check, that they are in "restorable" shape | + | | crtools || Validate .img files || easy || - || For a given set of image files check, that they are in "restorable" shape |
| |- | | |- |
− | | 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 || 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 [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 || X app || - || Dump/restore of graphical applications | + | | crtools || X app || hard || - || Dump/restore of graphical applications |
| |- | | |- |
− | | kernel || Undo semaphores || Cyrill Gorcunov || Require mods from both sides -- criu and kernel | + | | crtools/kernel || Undo semaphores || medium || Cyrill Gorcunov || Require mods from both sides -- criu and kernel |
| |- | | |- |
− | | crtools || More detailed RPC fail codes || - || Currently only success = false is reported :( | + | | crtools || More detailed RPC fail codes || easy || - || Currently only success = false is reported :( |
| |} | | |} |
| | | |
| [[Category:Development]] | | [[Category:Development]] |