[CRIU] [PATCHv3 0/4] criu exec fixes

Dmitry Safonov dsafonov at virtuozzo.com
Thu Jul 7 04:51:52 PDT 2016


Resending to remove patchwork's confusion on previous mails.

Here are three fixes for criu-exec:
- properly find needed syscall's number
- init kdat.task_size for syscall injection search code
- unmap remote mapping in seized process with raw syscall
  when it hasn't parasite daemon inside (criu exec case)

Also a patch to log PTRACE_GETREGSET failures.

With those patches `criu exec -p <pid> <syscall>` works for me
both for native and compat tasks.

v3: Print (unsigned long) with %lu rather then with %zu
v2: Drop compat_task variable;
    Also initialize has_compat_sigreturn feature, so it'll successfully
    exec into compatible applications.

Dmitry Safonov (4):
  x86/ptrace: describe failures from errno
  cr-exec: check syscall's number right before injecting it
  cr-exec: initialize kdat.{task_size,has_compat_sigreturn} on criu exec
  parasite-syscall: cure task without parasite with unmap

 criu/arch/x86/crtools.c      |  5 +++++
 criu/arch/x86/sys-exec-tbl.c | 19 ++++++-------------
 criu/cr-exec.c               | 15 +++++++++++----
 criu/include/kerndat.h       |  1 +
 criu/kerndat.c               | 11 +++++++++++
 criu/parasite-syscall.c      | 23 ++++++++++++++++++-----
 6 files changed, 52 insertions(+), 22 deletions(-)

-- 
2.9.0



More information about the CRIU mailing list