Difference between revisions of "Todo"

From CRIU
Jump to navigation Jump to search
(+ unhashed sockets task)
Line 14: Line 14:
 
| 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 || 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/kernel || madvise bits || - || currently we just drop these bits, since we have no API to find them out on dump
+
| crtools/kernel || madvise bits || gorcunov@ || currently we just drop these bits, since we have no API to find them out on dump
 
|-
 
|-
 
| crtools || partial migration || - || migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.)
 
| crtools || partial migration || - || migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.)
Line 44: Line 44:
 
| vzkernel/crtools || OpenVZ kernel support || - || Within 3.5 and RHEL7 port
 
| vzkernel/crtools || OpenVZ kernel support || - || Within 3.5 and RHEL7 port
 
|-
 
|-
| crtools || More sockoptions || - || -
+
| crtools || More sockoptions || xemul@ || SOL_ are mostly done
 
|-
 
|-
 
| crtools || Bridges in container || - ||
 
| crtools || Bridges in container || - ||
Line 58: Line 58:
 
| crtools || file locks || - || It's hard to do it carefully. We need to make sure that all lock users are taken into dump. Only support it inside container?
 
| crtools || file locks || - || It's hard to do it carefully. We need to make sure that all lock users are taken into dump. Only support it inside container?
 
|-
 
|-
| kernel || unhashed sockets || - || When we create a tcp socket it doesn't get to eny hashes and is not reported by diag infra. However, there exists stuff that we can configure on such a socket and there's no existing APIs for getting this info (e.g. -- bind to device). What to do? Report unhashed sockets with diag or extend API for this crap?
+
| kernel || unhashed sockets || xemul@ || When we create a tcp socket it doesn't get to eny hashes and is not reported by diag infra. However, there exists stuff that we can configure on such a socket and there's no existing APIs for getting this info (e.g. -- bind to device). What to do? Report unhashed sockets with diag or extend API for this crap?
 
|}
 
|}

Revision as of 14:00, 18 October 2012

component task assignee comments
crtools/kernel memory snapshot xemul@ need to take mem snapshot in kernel for iterative migration, (probably) rebootless upgrade and HA
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/kernel madvise bits gorcunov@ currently we just drop these bits, since we have no API to find them out on dump
crtools partial migration - migrate some tasks while proxying IPC to existing others (pipes->sockets, etc.)
crtools Shared objects (mm/fs/fdtable) 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 Proc fdinfo extension gorcunov@ Need to rework and resubmit the patches
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 connection fixup - When we turn repair off a window probe is sent by kernel. It can be lost and we leave with stuck connection. Plus, the keepalive timer isn't rearmed on repaired socket connect, probably this is the way to solve this.
crtools Iptables - This is easy. Need to run ipdables-save and iptables-restore
kernel/crtools Auto namespaces detection - Now we "detect" them by looking at cmdline options
crtools Migration w/o intermediate disk Adrian Reber -
kernel/crtools TUN/TAP - -
kernel/crtools tcpdump xemul@ The diag modules extensions are on their way to net-next. Next is -- socket filters
vzkernel/crtools OpenVZ kernel support - Within 3.5 and RHEL7 port
crtools More sockoptions xemul@ SOL_ are mostly 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 file locks - It's hard to do it carefully. We need to make sure that all lock users are taken into dump. Only support it inside container?
kernel unhashed sockets xemul@ When we create a tcp socket it doesn't get to eny hashes and is not reported by diag infra. However, there exists stuff that we can configure on such a socket and there's no existing APIs for getting this info (e.g. -- bind to device). What to do? Report unhashed sockets with diag or extend API for this crap?