- 13 Sep, 2013 3 commits
-
-
Ruslan Kuprieiev authored
The need in service is described at http://criu.org/Self_dumpSigned-off-by:
Ruslan Kuprieiev <kupruser@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Ruslan Kuprieiev authored
Signed-off-by:
Ruslan Kuprieiev <kupruser@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Ruslan Kuprieiev authored
The criu service is a daemon, that opens a unix socket and listens for incoming requests. The requests will be declared in protobuf/rpc.proto and for now will only contain the 'dump' request. Signed-off-by:
Ruslan Kuprieiev <kupruser@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 12 Sep, 2013 1 commit
-
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 10 Sep, 2013 5 commits
-
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
This is not trivial codeflow, let's document it till we remember what and why it does. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
In OpenVZ -> CRIU converter I use same build engine as in criu. But converter has own specifics such as shipping precompiled vdso.so libraries. So when I call for "make clean" these precompiled files get automatically deleted, which in turn cause converter to fail on next build attempt. Thus lets delete only *.so targets which are declared in makefiles. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 04 Sep, 2013 4 commits
-
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
This will allow us to generate rules where source for object file is laying in some extenal directory but compiled one is to be kept in some other directory. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 03 Sep, 2013 5 commits
-
-
Pavel Emelyanov authored
* Quite a lot of bugfixes and improvements in documentation, thanks to feedback from users. * New notable features include TUN devices, shared and master/slave mounts and alternative signal stack (sigaltstack) support. * Memory tracking is now upstream. * This is the last release, that is tied to kernel release. The next one will happen as soon as we decide it's worth doing so, not after the linux-3.12. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
6. Condition "rst > 0", taking false branch 7. off_by_one: Testing whether handle "rst" is strictly greater than zero is suspicious. Did you intend to include equality with zero? "rst" leaks when it is zero. CID 1072986 (#3 of 4): Resource leak (RESOURCE_LEAK) 12. leaked_handle: Handle variable "rst" going out of scope leaks the handle. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
The kernel must be 3.11 or greater due to 29000cae ptrace: add ability to get/set signal-blocked mask (v2) The patches for dumping tun devices are not committed in the upstream kernel yet, so ns/static/tun is excluded. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
CID null (#1 of 1): Double close (USE_AFTER_FREE) 10. double_close: Calling "restore_ns(int, struct ns_desc *)" closes handle "ns_old" which has already been closed. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 02 Sep, 2013 6 commits
-
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 29 Aug, 2013 2 commits
-
-
Pavel Emelyanov authored
Linked remap is implemented already. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 30 Aug, 2013 14 commits
-
-
Andrey Vagin authored
pr_perror uses errno, which is set by glibc wrappers. In pi return codes of syscalls should be printed Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
When tests are executed concurrently all of them use the same root, so libraries must be copied atomically. Without this patch we can get errors like this: cp: cannot create regular file ‘/tmp/criu-root.m45u5Y/lib64/ld-linux-x86-64.so.2’: File exists Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Use decode_pointer() to convert a virtual address into a native pointer. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
* check shared and slave mounts * check bind-mounts Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Currently we check that all shared mounts have identical set of children and that Each non-root mount has a proper root mount. v2: check that nobody is overmounted check a tree before trying to restore it. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
A non-root mount is bind-mounted from a proper root mount. Non-root mount without root mount is not supported yet Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
The idea is simple. If a mount can't be mounted now, we will try to mount it later. v2: don't wait slaves, they are unmounted anyway v3: add a comment in do_bind_mount to explain restoring of shared groups Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
A few sentences, which are required for understanging this patch 2a) A shared mount can be replicated to as many mountpoints and all the replicas continue to be exactly same. 2b) A slave mount is like a shared mount except that mount and umount events only propagate towards it. 2c) A private mount does not forward or receive propagation. All rules is there Documentation/filesystems/sharedsubtree.txt If it's a first mount in a group, all group members should be bind-mounted from this one. Each mount propagates to all members of parent's group. The group can contains a few slaves. Mounts, which have propagated to slaves, are unmounted, because we can't be sure, that they propagated in real life. For example: mount --bind --make-slave /share /slave1 mount --bind --make-slave /share /slave2 mount /share/test umount /slave2/test mount --make-share /slave1/test mount --bind --make-share /slave1/test /slave2/test 41 40 0:33 / /share rw,relatime shared:28 - tmpfs xxx rw 42 40 0:33 / /slave1 rw,relatime master:28 - tmpfs xxx rw 43 40 0:33 / /slave2 rw,relatime master:28 - tmpfs xxx rw 44 41 0:34 / /share/test rw,relatime shared:29 - tmpfs xxx rw 46 42 0:34 / /slave1/test rw,relatime shared:30 master:29 - tmpfs xxx rw 45 43 0:34 / /slave2/test rw,relatime shared:30 master:29 - tmpfs xxx rw /slave1/test and /slave2/test depend on each other and minimum one of them doesn't propagate from /share/test v2: use false and true for bool Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Try to restore mounts while a postpone list isn't empty and check that each iteration has some progress, otherwice it will fails for preventing infinite loops v2: rework logic about postpone list add more comments v3: one more attempt to make it more readable v4: Here is a master class from Pavel how to write self-documented code. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
They are required for restoring shared and slave mounts v2: use the same names of variables in image and in code Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
All shared mounts from one group are connected to circular list. All slave are added into the proper master list. v2: change variable name and fix a bug about adding shared mounts in a circular list. v3: handle errors of collect_shared Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-