- 28 Jun, 2016 40 commits
-
-
Cyrill Gorcunov authored
These entries will be used for NFS support and we already test partial support in vz7 version of criu. So to make images compatible lets reserve some of them in advance. CC: Pavel Emelyanov <xemul@virtuozzo.com> CC: Stanislav Kinsburskiy <skinsbursky@virtuozzo.com> Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Nikita Spiridonov authored
Needed for container migration, where arguments are set via p.haul as rpc request. Signed-off-by:
Nikita Spiridonov <nspiridonov@virtuozzo.com> Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Pavel Tikhomirov authored
1. First save/check all,default,lo together and only after - set them, as setting some sysctls can affect the others 2. Set "accept_redirects" after "forwarding" both for ipv4 and ipv6 3. Change order to "all", "default", "lo" *One can not set ipv6.conf.all.stable_secret, so don't even try, see: commit 622c81d57b39 ("ipv6: generation of stable privacy addresses for link-local and autoconf") Signed-off-by:
Pavel Tikhomirov <ptikhomirov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Pavel Tikhomirov authored
Restore all/accept_redirects and default/forwarding after all/forwarding as the last can influence the former two. (see inet_forward_change in kernel) # sysctl -w net.ipv4.conf.all.forwarding=1 net.ipv4.conf.all.forwarding = 1 # sysctl -w net.ipv4.conf.default.forwarding=1 net.ipv4.conf.default.forwarding = 1 # sysctl -w net.ipv4.conf.all.forwarding=0 net.ipv4.conf.all.forwarding = 0 # sysctl net.ipv4.conf.default.forwarding net.ipv4.conf.default.forwarding = 0 Trigered with netns-dev test in VZ7CT with vzlinux-6-x86_64 template v2:quirk accept_redirects instead of duplicate entries in devconfs Signed-off-by:
Pavel Tikhomirov <ptikhomirov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
unix: Do not autobind unnamed unix sockets addlen equal to sizeof(addr.sun_family) leads to autobinding of socket. If it had been autobinded when we dumped it, name.len wouldn't have been zero. So, this binding is wrong. Fix that. v2: Merge two conditional branches together Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
Empty cgroups will not be preserved in the criu cgset, since we don't ever dump the criu cgset. This is perhaps a corner case that we may want to address, but is probably (?) really only relevant for test cases. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
An oddity (bug?) means that we don't preserve empty cgroups in in the criu cgset, since we don't dump it. So we do need to move things into tasks. (This probably got commented out due to a bug in the Ubuntu kernel that I ran across [1] which should be fixed shortly :) [1]: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1588056Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
Because we're doing this on the same host, the cgroups will already exist. We need to write the properties in full mode to exercise these cases. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
Real ino is u32, while parameters are int. Fix that to prevent crap with overflows. Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
CID 163487 (#1 of 1): Unused value (UNUSED_VALUE) assigned_pointer: Assigning value from old_name to pe->name here, but that stored value is overwritten before it can be used. Cc: Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Acked-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Mike Rapoport authored
xemul: There's bfd over pagemap images: mike: Yes, but the bfd caches raw protobuf data, while the in-memory pagemap caches unpacked PagemapEntrie's. There's indeed some duplication, but you anyway have to go through 'bread -> unpack' to use pagemap. Also we read the entire pagemap and then close the image thus freeing the bfd cache. Signed-off-by:
Mike Rapoport <rppt@linux.vnet.ibm.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Mike Rapoport authored
Signed-off-by:
Mike Rapoport <rppt@linux.vnet.ibm.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
======================= Run zdtm/static/socket_aio in h ======================== Makefile:295: target 'mnt_enablefs.pid' given more than once in the same rule Start test Makefile:295: target 'mnt_enablefs.pid' given more than once in the same rule ./socket_aio --pidfile=socket_aio.pid --outfile=socket_aio.out Run criu dump =[log]=> dump/zdtm/static/socket_aio/24/1/dump.log ------------------------ grep Error ------------------------ (00.003450) Error (util.c:665): exited, status=3 (00.009104) Error (util.c:665): exited, status=3 (00.024564) Error (util.c:665): exited, status=3 (00.024598) Error (netfilter.c:88): Iptables configuration failed: Success (00.024625) Error (cr-dump.c:1297): Dump files (pid: 24) failed with -1 (00.025117) Error (cr-dump.c:1605): Dumping FAILED. ------------------------ ERROR OVER ------------------------ Wait for zdtm/static/socket_aio to die for 0.100000 Reported-by: Mr Jenkins Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Now we have many tests with the crfail flags. When criu dump fails, criu may create image files, but doesn't fill them. Reported-by: Mr Jenkins Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
These images are generated by the ip tool. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
We can call fchdir into the taget directory and call chroot(".") v2: fix one more comment speaking about proc Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Adrian Reber authored
Trying to migrate containers with tomcat and running ab as a test client (ab -n 1000000 -c 20 http://url/to/test) criu sometimes exited with an error if in-flight connections were detected. Criu can handle sockets listening and with established connection. In-flight connections can happen on sockets which do not yet have a full established connection (SYN, SYN-ACK, and the last ACK is missing). This adds a new option to criu: --skip-in-flight this option skips in-flight TCP connections. if TCP connections are found which are not yet completely established, criu will ignore these connections in favor of erroring out. With this option criu will skip sockets in this state and let's the client handle the re-connection. Signed-off-by:
Adrian Reber <areber@redhat.com> Acked-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Makefile:305: warning: overriding recipe for target 'shm-unaligned.pid' Makefile:290: warning: ignoring old recipe for target 'shm-unaligned.pid' Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
CID 161665 (#1 of 1): Uninitialized pointer read (UNINIT) 14. uninit_use: Using uninitialized value vma. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
CID 161664 (#1 of 1): Resource leak (RESOURCE_LEAK) 11. leaked_storage: Variable re going out of scope leaks the storage it points to. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
CRIU dump should fail if criu can't handle something. v2: add a separate patch to remove noauto for a few tests Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Looks like noauto was set by mistake for these tests Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
This allows pre-dump scripts to know CT root_item pid and enter into its namespaces. Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> CC: Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
This one is a little big ugly, see comments for details. At some point we should invent a better way to do these special cases, since we have them for freezer, cpuset, and now devices. Perhaps something like fstype, where you can ask the cgroup how to restore itself. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> CC: Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
In particular add support for the new controllers: * perf_event (nothing here, but may be used by the perf tool so we should keep it) * net_cls * net_prio * pids Also add support for many more memory properties that were not implemented in the first pass, but the container may use. Note that this commit omits the "devices" controller, because that needs to be checkpointed and restored in a special way. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> CC: Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
This is listed as a global prop, so we don't need to list it individually. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> CC: Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Tycho Andersen authored
We'll use this in the next patchset where we want to dump global properties of the freezer cgroup, but none of the special ones for this cgroup, because they're handled separately. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> CC: Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Mike Rapoport authored
Signed-off-by:
Mike Rapoport <rppt@linux.vnet.ibm.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Mike Rapoport authored
to remove forward declarations and create better grouping Signed-off-by:
Mike Rapoport <rppt@linux.vnet.ibm.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
List "unix_sockets" is used to link external sockets. Change this, to link all unix sockets there. To differ really external sockets in fix_external_unix_sockets(), we may check for socket's already_dumped value. This may be useful to traverse over all unix sockets in a namespace. Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Kirill Tkhai authored
Export current to allow to use find_unused_fd() from everywhere. Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Dmitry Safonov authored
I suggest to add support for coveralls.io. It can't show all coverage, as we don't run all tests on travis, but still everyone who forked CRIU can see instant coverage of his Travis build. As a nice feature, it will show code cover increasing/decreasing just after you push a commit - which could give you a nice hint about content of a new tests. For this feature, we need to build CRIU with `make GCOV=1`, which adds --coverage and disables optimizations. The resulting report looks like this: https://coveralls.io/builds/6439346 I was thinking about codecov.io also, but it has fewer community, less fixed issues on github - so I choose this service. Just a random fun fact: file-ids.c covered completely on tests, except -ENOMEM return. Maybe it worth to run fault injections tests on Travis. Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Cyrill Gorcunov authored
The s_dev as well as mnt_id may change during container migration, so exclude them from the comparision. Signed-off-by:
Cyrill Gorcunov <gorcunov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Dmitry Safonov authored
Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-