Line 67: |
Line 67: |
| | crtools/kernel || [[NFS mount points]] support || hard || - || NFS mount points from inside container cannot be easily restored. The thing is -- if we want to restore opened file we will go ahead and [[How hard is it to open a file|call]] the open system call. If the file in question resides on NFS, the latter might need to go to network to check whether the file actually exists and set up the handle. But if the networking is still not restored this operation would fail and we'll have to fail the whole restore. In order to untie this chicken-and-egg problem we may go in two directions. | | | crtools/kernel || [[NFS mount points]] support || hard || - || NFS mount points from inside container cannot be easily restored. The thing is -- if we want to restore opened file we will go ahead and [[How hard is it to open a file|call]] the open system call. If the file in question resides on NFS, the latter might need to go to network to check whether the file actually exists and set up the handle. But if the networking is still not restored this operation would fail and we'll have to fail the whole restore. In order to untie this chicken-and-egg problem we may go in two directions. |
| |- | | |- |
− | | kernel || [[Seamless kernel upgrade]] || hard || xemul || | + | | kernel || [[Seamless kernel upgrade]] || hard || xemul || Briefly -- dump tasks (into memory), change the kernel w/ kexec, then restore tasks back. From the tasks and remote client perspective tasks has just stopped and then resumed on the newer kernel. Can be a good complement to the classic live-patching technology. |
| |- | | |- |
− | | crtools || Validate .img files || easy || - || [[CRIT]] For a given set of image files check, that they are in "restorable" shape | + | | crtools || Validate .img files || easy || - || [[CRIT]] sub-task. For a given set of image files check, that they are in "restorable" shape, i.e. contain valid data and no pieces are missing. |
| |- | | |- |
− | | crtools || Restore arbitrary 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 || Restore arbitrary 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]. The task of resolving the given images into operations we might need to perform seem to be NP (not proven though). |
| |- | | |- |
− | | crtools || C/R X app || hard || Ruslan Kuprieiev || Dump/restore of graphical applications (see about [[integration]]) | + | | crtools || C/R [[X applications]] || hard || Ruslan Kuprieiev || Dump/restore of graphical applications (see about [[integration]]). In case of X app part of its state is stored into the X-server. Need the way to fetch this state during dump and put this state back into the server on restore. Requires fixing the X-server software too. |
| |- | | |- |
| | crtools/kernel || Undo semaphores || medium || 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 |