- 11 Dec, 2015 3 commits
-
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
- need encoder Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
- need to add encoding method - also need to do the same for ipc queues and shmem Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 10 Dec, 2015 9 commits
-
-
Pavel Emelyanov authored
When debugging it's useful to stop zdtm.py at certain points and check what's going on out there. For this the --sbs (step-by-step) option is introduced. It will make zdtm.py stop and wait for user keypress before dump, before restore and after restore. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Andrew Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Generated files are often analyzed after test, so it's handy to have their full names on the screen at once. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Andrew Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Right now zdtm spawns test into a pseudo-container and redirects its output in a temp file. This is done not to mix outputs of tests, running in parallel, with each other. But if we run tests one by one or there's only one test in the list we can safely print the output right on the screen. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Andrew Vagin <avagin@virtuozzo.com>
-
Andrey Vagin authored
In [3]: a Out[3]: {1, 2, 3} In [4]: a.remove(5) --------------------------------------------------------------------------- KeyError Traceback (most recent call last) <ipython-input-4-af76ca25878a> in <module>() ----> 1 a.remove(5) KeyError: 5 Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Currently we wait when a namespace will be restored to get its root. We need to open a namespace root to open a file to restore a memory mapping. A process restores mappings and only then forks children. So we can have a situation, when we need to open a file from a namespace, which will be "restored" by one of our children. The root task restores all mount namespaces and opens a file descriptor for each of them. In this patch we open root for each mntns in the root task. If we neeed to get root of a namespace which isn't populated, we can get it from the root task. After the CR_STATE_FORKING stage, the root task closes all namespace descriptors ane we know that all namespaces are populated at this moment. v2: don't close root_fd for root ns, because it was not opened Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
The native pb engine doesn't accept types other than int or long: ... File "/root/src/criu/pycriu/images/pb2dict.py", line 264, in dict2pb pb_val.append(_dict2pb_cast(field, v)) File "/usr/lib/python2.7/site-packages/google/protobuf/internal/containers.py", line 111, in append self._type_checker.CheckValue(value) File "/usr/lib/python2.7/site-packages/google/protobuf/internal/type_checkers.py", line 104, in CheckValue raise TypeError(message) TypeError: 1.1258999068426252e+16 has type <type 'float'>, but expected one of: (<type 'int'>, <type 'long'>) In particular, this is seen when encoding back so_filter field from inetsk image. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Ruslan Kuprieiev <kupruser@gmail.com>
-
Cyrill Gorcunov authored
For historical reason we allocate the complete PATH_MAX here just to fetch a word of freezer state. Lets relax the stack pressue and rename @path to @state. Same time make states @frozen, @freezing, @thawed being static, we don't export them. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Andrew Vagin <avagin@virtuozzo.com> 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>
-
- 09 Dec, 2015 3 commits
-
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 08 Dec, 2015 25 commits
-
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
It isn't required and it doesn't work in a case when we want to bind-mount a file. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Adrian Reber authored
To better understand the content of mm-<ID>.img and pagemap-<ID>.img additional constant names have been added to better resolve the hex value to symbolical names. Signed-off-by:
Adrian Reber <areber@redhat.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
If a temporary mount is a shared one, a new mount can be propagated into it. Fixes: 0e9736ab ("mount: fix restoring a bind-mount when its root is overmounted)") Reported-by: Mr Jenkins Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Fyodor authored
We need to perform dirty page tracking when dumping shmem but there we have only const vmas so we need pmc to work with them. Also pmc concept implies that it won't change its vmas so it would be natural to declared them as const. Signed-off-by:
Fyodor Bocharov <fbocharov@yandex.ru> Signed-off-by:
Eugene Batalov <eabatalov89@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Fyodor authored
CRIU doesn't save vaddr of each anon shmem page in anon shared mem pagemap img. It saves page offset from the beginning of anon shared memory area. CRIU calls page_xfer_dump_pages() with non zero @off argument to convert dumper virtual addresses to such offsets. The problem is in page_xfer_dump_pages() code. It substracts @off only for pages in pagemap but not for holes in pagemap. Bug is fixed in this patch. This patch is just a copy-paste of valid code path for pages to code path for holes. Bug is not currently reproduced in CRIU because: 1. Only anon shmem provides non-zero @off value to page_xfer_dump_pages() 2. Anon shared memory doesn't create holes in its pagemap (for now) This bugfix is a preparation for anon shared memory deduplication patchset. Signed-off-by:
Fyodor Bocharov <fbocharov@yandex.ru> Signed-off-by:
Eugene Batalov <eabatalov89@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Its only purpose if to verify that we can show up a huge number of inotify in fdoutput (before the kernel v3.18-rc1-7-ga3816ab we can show only handles which fit page size in summary). In particular we revealed that hald daemon makes up to 35 notification marks which kernel can't show up in a one pass and dump fails. 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>
-
Andrey Vagin authored
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Ryabinin authored
When __nonuserns_sysctl_op() hits non-existing it goes to the next iteration without updating 'req' pointer. Thus it continuously tries to open non-exitsting entry until breaking out of loop. We should go to the next sysctl instead. Fixes: f79f4546 ("sysctl: move sysctl calls to usernsd") Signed-off-by:
Andrey Ryabinin <aryabinin@virtuozzo.com> Acked-by:
Tycho Andersen <tycho.andersen@canonical.com> Acked-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Dmitry Safonov authored
GCC now assumes by default that the stack is aligned to a 16-byte boundary. It's very unlikely that parasite head's first call will contain an SSE instruction which will segfault, but to be pedantically correct will lose additional 8 bytes. See also: http://sourceforge.net/p/fbc/bugs/659/Signed-off-by:
Dmitry Safonov <dsafonov@odin.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Tycho Andersen authored
In LXD, we use the container name in the LSM profile. If the container name is changed on migrate (on the host side), we want to use a different LSM profile name (a. la. --cgroup-root). This flag adds that support. v2: remove unused field, add comment about double detection in kerndat_lsm() Signed-off-by:
Tycho Andersen <tycho.andersen@canonical.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Currently decoded with --pretty image cannot be encoded back if there's an IP address inside. "Just decoded" can. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Currently device numbers are shown as plain integers, but in pretty output it's nice to see the major:minor pairs. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Ruslan Kuprieiev <rkuprieiev@cloudlinux.com>
-
Pavel Emelyanov authored
The crit tool should decode and encode all images and after de- and en- sequence the result should be the same as before. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Ruslan Kuprieiev <rkuprieiev@cloudlinux.com>
-
Pavel Emelyanov authored
If someone wants to run all tests in any, but the most difficult for criu, flavor, the 'best' one is introduced. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Ruslan Kuprieiev <rkuprieiev@cloudlinux.com>
-
Pavel Emelyanov authored
Currently launcher doesn't know that some tests are skipped and draws incorrect progress bar :) Signed-off-by:
Pavel Emelyanov <xemul@parallels.com> Acked-by:
Ruslan Kuprieiev <rkuprieiev@cloudlinux.com>
-
Andrew Vagin authored
It's used to restore bind-mounts. For example, we cat the common part of bind-mounts: Core was generated by `criu restore -vvvv --file-locks --tcp-established --evasive-devices --manage-cg'. Program terminated with signal 11, Segmentation fault. 741 BUG_ON(target_root[tok] == '\0'); (gdb) bt https://jira.sw.ru/browse/PSBM-41932 Reported-by: Virtuozzo QA Team Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Kirill Tkhai authored
Restore a receive queue in cases of: 1)socketpair with closed second end; 2)peer-less socket, who is a peer for others. We use here a hack, it is the connect() with AF_UNSPEC family, which clears peer of restoring socket. See unix_dgram_connect() for the details. This also makes socket_close_data test working. SOCK_STREAM is supported in TCP_ESTABLISHED case in the same function. Signed-off-by:
Kirill Tkhai <ktkhai@virtuozzo.com> v2: 1)Add a commentary near connect() 2)Delete test/zdtm/live/static/socket_close_data.desc v3: delete ui->ue->peer check Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
In this case we mount source mount in a temporary place and use it to create the bind-mount. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
This is used to get a mount without over-mounted parts. Signed-off-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-