- 14 Mar, 2017 7 commits
-
-
Dmitry Safonov authored
Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
It's a hostprog so one target is enough, otherwise we're gitting double deps generation. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
We don't need it actually. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Andrew Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
The compel component is a replacement for several aspects of CRIU functionality: binary blobs generation for PIE parasite/restore code, and a library for parasite code injection and execution (to be implemented). In the commit we rather shuffle compel into own directory and use it for 1) Fetching cflags when compiling PIE blobs 2) Use its "piegen" functionality to generate blobs themselves. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
Here we introduce actions: - "piegen" to generate blobs, which is used by criu already; - "cflags" and "ldflags" to print out options needed for compiler and linker when building compel compatible objects. We rather moved old "main" function body into piegen helper function and implement the rest of actions since they are one-liners. Note the usage uses new "compel" brand, but it's safe because we don't export anything yet. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
This will be needed to print out cflags and ldflags. Unused at moment. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Fixes the following error on travis-ci: CC arch/x86/syscalls/syscall32.o In file included from /usr/include/signal.h:28:0, from /home/travis/build/0x7f454c46/criu/criu/arch/x86/include/asm/types.h:5, from arch/x86/syscalls/syscall32.c:1: /usr/include/features.h:374:25: fatal error: sys/cdefs.h: No such file or directory # include <sys/cdefs.h> ^ Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
- 08 Mar, 2017 1 commit
-
-
Pavel Emelyanov authored
This is not a huge release. Some new stuff for Docker c/r and several bugs fixed. Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
- 07 Mar, 2017 1 commit
-
-
Pavel Emelyanov authored
The ipcns-shm images are buffered and contain raw dumps of memory contents. If the segment is huge, the bfd engine overflows and doesn't write data into image. This is not nice by itself, but huge images shouldn't use bfd to avoid double buffering. Also, in the future, this image should be fixed not to keep mem dumps in one image with object. https://github.com/xemul/criu/issues/287Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
- 06 Mar, 2017 21 commits
-
-
Kir Kolyshkin authored
A year ago this flag was removed, as parts of criu were build in sub-directories (i.e. by using make -C SUBDIR), and therefore paths printed by make were relevant to a SUBDIR rather than top source dir, which prevented tools like vim from jumping to a correct source file with with error (for more details, see commit XXXXXX "nmk: remove no-print-directory from MAKEFLAGS"). Now, as we have everything (except Documentation and test, which is rather minor) built from top source directory, we can finally add the flag back and enjoy cleaner output. Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Kir Kolyshkin authored
It was not working: > $ make DESTDIR=`pwd`/inst3 uninstall > UNINSTALL crit.1 > UNINSTALL criu.8 > UNINSTALL libcriu.so > UNINSTALL pkgconfig/criu.pc > UNINSTALL crit > /media/ts/kir/git/criu/scripts/nmk/scripts/build.mk:83: criu/arch/x86/Makefile: Not a directory > make[2]: *** No rule to make target 'criu/arch/x86/Makefile'. Stop. > Makefile:48: recipe for target 'criu/arch/x86/crtools.built-in.o' failed > make[1]: *** [criu/arch/x86/crtools.built-in.o] Error 2 > Makefile.install:49: recipe for target 'uninstall' failed > make: *** [uninstall] Error 2 This is a fix to commit 7a360484 ("build/make: return to make from top directory"). Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Kir Kolyshkin authored
Our whole system of Makefiles are integrated from top to bottom, meaning: 1. The paths in sub-makefiles are relative to the top source dir. 2. Sub-makefiles are executed via make $(build)=<SUBDIR> <TARGET> For some reason, makefiles under lib/ are the exclusion. Let's fix it. Side effect: you can now build any individual target under lib/, for example, "make lib/c/libcriu.so" works. [v2: use the .FORCE, thanks to dsafonov@] Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Kir Kolyshkin authored
Instead of removing everything by means of a few wildcards, let's properly generate the file names to be removed. [v2: fix a typo, thanks to dsafonov@] [v3: resend with a typo fixed for real, this time] Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Andrei Vagin authored
If a pipe is inherited (external), it may be impossible to reopen it from a restored user namespace due to lack of permession, so in this case we have to reopen it via usernsd. https://github.com/opencontainers/runc/issues/1333Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Andrei Vagin authored
================= Run zdtm/static/socket-tcp-nfconntrack in h ================== Start test Test is SUID ./socket-tcp-nfconntrack --pidfile=socket-tcp-nfconntrack.pid --outfile=socket-tcp-nfconntrack.out Another app is currently holding the xtables lock. Perhaps you want to use the -w option? Makefile:331: recipe for target 'socket-tcp-nfconntrack.pid' failed make: *** [socket-tcp-nfconntrack.pid] Error 1 Reported-by: Mr Travis Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Stanislav Kinsburskiy authored
"Check_fs_type" helper was repalce by "get_fs_type". This reference is a silly mistake. Signed-off-by:
Stanislav Kinsburskiy <skinsbursky@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
rbruno@gsd.inesc-id.pt authored
This is needed for the case when the target descriptor is image cache/proxy socket. Signed-off-by:
Rodrigo Bruno <rbruno@gsd.inesc-id.pt> Signed-off-by:
Katerina Koukiou <k.koukiou@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
rbruno@gsd.inesc-id.pt authored
This is needed for the case when we get data from image-cache/proxy socket. Signed-off-by:
Rodrigo Bruno <rbruno@gsd.inesc-id.pt> Signed-off-by:
Katerina Koukiou <k.koukiou@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Pavel Emelyanov authored
After fds restore set merge we no longer need two lists. Don't BUG in eventpoll when the tfd is not on the list. This situation means that it's restored, so it's safe to report OK from this place. Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Reviewed-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
This is to avoid long item->pid->ns[0].virt for vpid(item). This is 1) for f in $(git grep -l 'ns\[0\]'); do sed -e 's/\([a-zA-Z0-9_]\+\)->pid->ns\[0\].virt/vpid(\1)/g' -i $f; done 2) adding of vpid() routine 3) some manual fixlets Reviewed-by:
Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
We should only get to the post-open stage for standalone sockets with peers. All the others return 0 from ->open which means "restore is over". This change avoids double calling or rst_file_params and restore_socket_opts for those ones. Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Adrian Reber authored
Trying to use the FEATURE_CHECK RPC with criu_req->criu_opts set to NULL makes CRIU segfault. Technically there is no reason to have a valid criu_req->criu_opt during feature check. The only reason was to set the image directory for setproctitle(). This removes the segfault and the unnecessary requirement of setting criu_req->criu_opts. Another possible solution would have been to return an error if criu_req->criu_opts is NULL but so far it seems unnecessary to have criu_req->criu_opts during feature check. Signed-off-by:
Adrian Reber <areber@redhat.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Kir Kolyshkin authored
This will help us catch bugs where the arguments are not in line with the format string. Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Rodrigo Bruno authored
criu/sk-queue.c | 33 ++++++++++++--------------------- 1 file changed, 12 insertions(+), 21 deletions(-) In order to prepare for the use of sockets to transfer the image files lseek calls needs to be removed. For sk-queue, we now read the packet data at the same time than the header. This has the disadvantage to consume more memory between the image read and the packets restore, but should hopefully be affordable. Signed-off-by:
Rodrigo Bruno <rbruno@gsd.inesc-id.pt> Signed-off-by:
Katerina Koukiou <k.koukiou@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
- 01 Mar, 2017 10 commits
-
-
Kir Kolyshkin authored
When criu is compiled with GCOV=1, .gc* files created are never cleaned. While 'git clean -dxf' does the job and is popular among the criu devs, it still feels good to have good ol' make clean doing the right thing. Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Kir Kolyshkin authored
For most of the CLI tools I see, adding -v option increases their verbosity. Currently, this is not the case for criu. Default verbosity is set it 2, and using -v actually decreases the verbosity level to 1, so to increase verbosity you need to use -vvv (or -v3). To me, this behavior is quite counterintuitive. This patch changes the way -v works (but retains -vNUM as it was). Now, using -v increases verbosity by +1 from the default value (and e.g. -vvv increases it by +3). Surely, this changes user experience: for example someone who was using -v (rather than -v1 or -v0) to silent warnings, will now have verbosity increased. IMHO this is for the better. Signed-off-by:
Kir Kolyshkin <kir@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Andrei Vagin authored
"zdtm.py run -a" doesn't work on Alpine: find: unrecognized: -executable So run zdtm/static/env00 for now to be sure that it is not broken at all. travis-ci: success for travis: execute tests on Alpine Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-
Andrei Vagin authored
It works faster and allows to check exit codes. travis-ci: success for series starting with [1/2] page-server: don't return a server pid from page-server Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com>
-