- 13 Aug, 2014 1 commit
-
-
Sophie Blee-Goldman authored
Fixes a bug in how PARASITE_MAX_GROUPS was calculated, and adds a compiler check to assert that parasite_dump_creds doesn't exceed the page size. Signed-off-by:
Sophie Blee-Goldman <ableegoldman@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 12 Aug, 2014 27 commits
-
-
Tycho Andersen authored
When doing a restore for LXC, we store some other metadata (which bridge a veth was on) in the image directory so that the restore script can correctly unlock a network device and attach it to the right interface. This patch is needed so that the script can find this metadata. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
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
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Tycho Andersen <tycho.andersen@canonical.com>
-
Pavel Emelyanov authored
This should be symmetrical with cg dirs creation. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Tycho Andersen <tycho.andersen@canonical.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
This is inspired by two problems we have with cgroup* tests. 1. Tests cannot easily clean after themselves -- one cannot remove a cg dir with tasks in it and the root task of a test is in a cgroup it tries to remove. 2. After dump old cgroup dirs are remained after the test, while criu should restore them (this is what we write tests for). The proposal is to introduce per-test hooks, for now two of them: --pre-restore and --clean. For cgroup tests both hooks will remove the created directories. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Christopher Covington authored
Arrays and "&&" in test are not supported by Busybox v1.19.4. The `set` command can put field-separated arguments into the positional parameters, which is relatively equivalent to using an array. Signed-off-by:
Christopher Covington <cov@codeaurora.org> Acked-by:
Andrew Vagin <avagin@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
If we're dumping namespaced tasks, the fl_owner value we see are the real pids of tasks, while we need virtual ones. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
For that zdtm.sh is executed in pidns to avoid pid conflicts. Cc: Christopher Covington <cov@codeaurora.org> 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>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Otherwise static/socket-tcp and streaming/socket-tcp have the same path to images and they can affect each other. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
They are now in per-pid images, but every entry contains a pid to which it "belongs". This belonging is fake -- it's just a pid of a task who placed the lock, while locks really belong to files. We even have a bug when task that locked a file exited and "delegated" the lock to its child. This images merge reduces the amount of image files criu generates and may simplify the fix of mentioned above issue. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
A bit later we'd need to check whether cinfo collector opened an image or not due to file absense. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
They all should be zeroed. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
If the root task is forked in a new pidns, it can't use its pid for accessing /proc, because this proc belongs to the source pidns. v2: don't copy a static string. v3: take a bright part of Tycho's patch Reported-by:
Tycho Andersen <tycho.andersen@canonical.com> Cc: Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Acked-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Prepare it for multiple tasks by moving cg creation and checking code into helpers. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Fix for closed cgyard descriptor for changed cgroup was 9752c11d. One more place left. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Tycho Andersen authored
criu managed cgroups is now an opt-in thing, so by default criu does not manage (i.e. dump or restore) cgroups. This allows users to use the previous behavior. Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
It looks like criu constantly postpones external bind mounts. I'm trying to resolve when we manage to break this (when I did ext-mount-map they for some reason didn't). Meanwhile, this patch fixes it back. Reported-by:
Saied Kazemi <saied@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Christopher Covington authored
The $test variable was being used without being locally defined in the start_test function. Define it locally for uniformity with other functions and use it where convenient. Also make the definition in case_error local for uniformity with other functions. Signed-off-by:
Christopher Covington <cov@codeaurora.org> Acked-by:
Andrew Vagin <avagin@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Christopher Covington authored
The -p argument to `ps` is not supported by Busybox v1.19.4. Sending signal 0 with the `kill` command is an alternative way to check whether a process is still running. http://www.linuxjournal.com/content/monitoring-processes-kill-0Signed-off-by:
Christopher Covington <cov@codeaurora.org> Acked-by:
Andrew Vagin <avagin@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 08 Aug, 2014 5 commits
-
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Garrison Bellack authored
Building on top of the cgroup properties infrastructure patch, this patch will add all the cgroups properties to the static list of properties we want to restore. Change-Id: I992c260089dcc2ba169a8ac5b19d73f29c678e7d Signed-off-by:
Garrison Bellack <gbellack@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Garrison Bellack authored
Restores 2 cgroup properties after the criu restoration of tasks. Currently the cgroup files to be restored are static but are easily extendable. To change the properties to be restored, edit this list at the top of cgroup.c. If a cgroup exists during restoration, its properties will not be overwritten. Work based off Tycho Anderson tycho.andersen@canonical.com Change-Id: Ida32b9773eeac1d4d6e82ad644524ed099d5f9b1 Signed-off-by:
Garrison Bellack <gbellack@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
gbellack authored
Change-Id: Idaf8689188041c848126beb9c401bd90d0e2be69 Signed-off-by:
Garrison Bellack <gbellack@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
gbellack authored
There is an issue where if the proccess to be killed spawns a child proccess and moves it in a child cgroup of the one the parent process is in, the cgroup fd was being closed in the parent process before it forked the child. Then when move_in_cgroup() is called for the child process, the file descriptor has already been closed causing a failure for the second call to move_in_cgroup(). Moved the fd close after the fork call. Change-Id: I6ae88b95c5410a7f56108e28eb3133f113e868d0 Signed-off-by:
Garrison Bellack <gbellack@google.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 07 Aug, 2014 7 commits
-
-
Andrey Vagin authored
SIGMAX is a valid value, but the 0 signal doesn't exist. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
proc_parse.c: In function ‘parse_task_cgroup’: proc_parse.c:1603:16: error: ‘path’ may be used uninitialized in this function [-Werror=uninitialized] cc1: all warnings being treated as errors Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
The helper task doesn't change sigaction and does nothing with parent_sigacts. paren_sigacts will contain values for the previous alive task, so the logic about inherence should work as expected. Reported-by: Jenkins Criuovich Signed-off-by:
Andrew Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Most of the sigactions are the same across the tasks in the image. Nonetheless existing code always calls a syscall to restore them and spends 64 calls per-task. Let's restore signals before forking children and let them inherit sigactions. Tune one only if it differs from the parent's. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Andrew Vagin <avagin@parallels.com>
-
Pavel Emelyanov authored
We already have a signals setup helper for this. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Andrew Vagin <avagin@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-