- 16 Jul, 2013 14 commits
-
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
There are parts dumping which is common to thread and task, and this stuff is represented by parasite_dump_thread structure. Merge this into parasite_dump_misc and facror out dumping code. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Pavel Emelyanov authored
There are 3 users of one -- remote syscall, thread dump and daemon run. Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
PTRACE_SETSIGMASK takes pointer on mask of blocked signals, but sigmask is already pointer. Signed-off-by:
Andrew Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
If a kernel supports PTRACE_SETSIGMASK, criu don't need to execute PARASITE_CMD_INIT and PARASITE_CMD_DAEMONIZE, because the frist command is used only for blocking signals. If criu crashes between these commands, a process state will be corrupted, because all signals remain blocked. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
We use two commands to get task registers safely. The first command blocked signals, then crtools dumped registers and all per-thread data and the the second command unblocks signals. Currently signals can be blocked with help SETSIGMASK, so we need only one command to dump per-thread data. 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
Currenly we can restore blocking signals with help ptrace, so if registers are restored after command, a process state will not be corrupted if criu crashes. Same as with previous patch -- at the end there will be only two trap commands, so this is OK. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Pending signals should be saved, so signals should be blocked. Signals are blocked for EACH command, because a chance of destroying a process state should be a small as possible. At the end there will only two "trapped" commands -- to dump thread and to start daemon in parasite, so this doesn't add significant overheads. If crtools is killed between two commands, a dumped process will run continue. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
It will be used in a few places 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
The initilization stage is not good for that, because it can fail. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
tcp_repair_off implicitly modifies SO_REUSEADDR option inside the kernel (thanks avagin@ for pointing this feature out) thus if we are to rollback and restore the former settings of socket -- don't forget to repair this particular one. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> CC: Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 15 Jul, 2013 3 commits
-
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Window probe is sent during disabling repair mode on a socket, so network must be unlocked in this moment. https://bugzilla.openvz.org/show_bug.cgi?id=2670 v2: don't fail after unlocking network Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
It never returns errors. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 12 Jul, 2013 5 commits
-
-
Alexander Kartashov authored
This patch fixes a stack corruption caused by the routine since it pushes the registers R4, R5, R6, and R7 onto the stack that results in a restorer crash while restoring a zombie (https://bugzilla.openvz.org/show_bug.cgi?id=2663) Reported-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Alexander Kartashov <alekskartashov@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
The number of bytes, which were sent and received, should be exchanged in the message Thanked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
This should be done to prevent generating core files, if a process was killed by SIGSEGV, SIGBUS, etc https://bugzilla.openvz.org/show_bug.cgi?id=2655 Looks-good-to: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Otherwise we lost 1:1 mapping between names being dumped and what user sees after restore. | 1455 pts/0 T 0:00 \_ ./crtools restore -t 1448 | 1448 ? Ss 0:00 | \_ ./zombie00 --pidfile=zombie00.pid --outfile=zombie00.out | 1449 ? Z 0:00 | \_ [zombie00] <defunct> | 1450 ? Z 0:00 | \_ [zombie00] <defunct> | 1451 ? Z 0:00 | \_ [zombie00] <defunct> | 1452 ? Z 0:00 | \_ [zombie00] <defunct> https://bugzilla.openvz.org/show_bug.cgi?id=2635Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Acked-by:
Andrew Vagin <avagin@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Each signals should be sent to a proper thread.. Probably it was a reason of a error, which was caught yesterday + cat zdtm/live/static/sigaltstack.out 20:57:10.933: 4380: thread in sas: at 0x6083e0 (size 0x2000 flags 0x1) 20:57:10.934: 4380: Waiting in thread SAS 20:57:11.219: 4380: Thread may leave SAS 20:57:11.219: 4380: Leaving thread SAS 20:57:11.219: 4380: leader in sas: at 0x6083e0 (size 0x2000 flags 0x1) 20:57:11.219: 4380: main old: at 0x6063e0 (size 0x2000 flags 0x1) 20:57:11.220: 4380: main new: at 0x6083e0 (size 0x2000 flags 0x1) 20:57:11.220: 4380: thrd old: at 0x6083e0 (size 0x2000 flags 0x1) 20:57:11.220: 4380: thrd new: at 0x6083e0 (size 0x2000 flags 0x1) 20:57:11.220: 4380: FAIL: sigaltstack.c:163: sas not restored (errno = 11 (Resource temporarily unavailable)) https://bugzilla.openvz.org/show_bug.cgi?id=2668Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 11 Jul, 2013 10 commits
-
-
Andrey Vagin authored
ldd pipe00: linux-vdso.so.1 => (0x00007fffbb0cb000) Currently the first part of line is dropts, if the line contains "=>", so we need to exclude vdso, before modifing lines. This patch fixes bug: $ zdtm.sh ns/static/pipe00 Failed at (0x00007fffa49fe000) Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
Quite convenient to know which exactly names are used. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Remove the first part from linues like this: libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6d83000) 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
Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
make: Entering directory `/root/crtools/test/zdtm/live/static' make -C ../../lib make[1]: Entering directory `/root/crtools/test/zdtm/lib' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/crtools/test/zdtm/lib' rm -f -f -r env00.pid env00.out* *env00.test* env00.*.test env00.state make: Leaving directory `/root/crtools/test/zdtm/live/static' pid00 caps00 maps01 groups sched_prio00 sched_policy00 sock_opts00 sock_opts01 cmdlinenv00 packet_sock fanotify00 sk-netlink make: Entering directory `/root/crtools/test/zdtm/live/static' make -C ../../lib make[1]: Entering directory `/root/crtools/test/zdtm/lib' Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
Like this: mkdir: cannot create directory ‘/tmp/criu-root.wt2oW0/lib64’: File exists Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrew Vagin authored
This patches fixes compilation on Raspberry Pi and removes a few defines from tests. msg.c: In function ‘test_msg’: msg.c:41:11: error: ‘PAGE_SIZE’ undeclared (first use in this function) CC: Alexander Kartashov <alekskartashov@parallels.com> Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
zdtm.sh reports error immediatly, if a test process exited or crashed. We should be fear, that pid can be reused. There are many place, which will fail in this case. And a chance to get this situation is really small. 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> Acked-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
- 10 Jul, 2013 8 commits
-
-
Andrey Vagin authored
Nobody uses it. Signed-off-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Andrey Vagin authored
It is never called for thread leaders, because they are dumped by dump_task_core_all 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
To restore SAS we have two ways: - call for sigaltstack explicitly in restorer.c right before we call for sigreturn - pass stack value to sigreturn call and allow the kernel to restore stack for us Since second way is a simplier one -- we stick with it. [alekskartashov@: use RT_SIGFRAME_UC] Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> CC: Alexander Kartashov <alekskartashov@parallels.com> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
-
Cyrill Gorcunov authored
[alekskartashov@: use encode_pointer] Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> CC: Alexander Kartashov <alekskartashov@parallels.com> 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
Will need it to store thread alternative signal stack. 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>
-