You need to sign in or sign up before continuing.
  1. 26 Dec, 2014 3 commits
    • Pavel Emelyanov's avatar
      aio: Restore AIO contexts · 2694a74a
      Pavel Emelyanov authored
      Restoring AIO is quite simple. Once all VMAs are put in
      their places we can call io_setup() to let kernel create
      the context back and then move the ring into proper place.
      
      Another thing we should "restore" is the context ID. But
      the thing is, upon ring creation kernel repots the ring
      start address as this ID. And there's a patch in the -next
      tree that changes the ID when we remap the ring. That
      said after AIO context creation and ring remap we need
      to check that the new ID is seen by the kernel.
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      2694a74a
    • Pavel Emelyanov's avatar
      aio: Dump AIO rings · 08c20482
      Pavel Emelyanov authored
      When AIO context is set up kernel does two things:
      
      1. creates an in-kernel aioctx object
      2. maps a ring into process memory
      
      The 2nd thing gives us all the needed information
      about how the AIO was set up. So, in order to dump
      one we need to pick the ring in memory and get all
      the information we need from it.
      
      One thing to note -- we cannot dump tasks if there
      are any AIO requests pending. So we also need to
      go to parasite and check the ring to be empty.
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      08c20482
    • Pavel Emelyanov's avatar
      x86: Add io syscalls · 80cf0426
      Pavel Emelyanov authored
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      80cf0426
  2. 25 Dec, 2014 4 commits
  3. 24 Dec, 2014 2 commits
  4. 22 Dec, 2014 13 commits
  5. 19 Dec, 2014 10 commits
  6. 17 Dec, 2014 3 commits
  7. 11 Dec, 2014 1 commit
  8. 10 Dec, 2014 4 commits
    • Saied Kazemi's avatar
      tests: Pipe.c Test Program · 54081aff
      Saied Kazemi authored
      Hi Saied,
      
      This patch adds your test in the criu test system.
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      54081aff
    • Andrey Vagin's avatar
      zdtm/cwd00: avoid resolving an abs path · e12fd8f9
      Andrey Vagin authored
      We may not have permissions for this.
      Reported-by: 's avatarRuslan Kuprieiev <kupruser@gmail.com>
      Cc: Ruslan Kuprieiev <kupruser@gmail.com>
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      e12fd8f9
    • Ruslan Kuprieiev's avatar
      8f71344c
    • Saied Kazemi's avatar
      Add inherit fd support · 0412152f
      Saied Kazemi authored
      There are cases where a process's file descriptor cannot be restored
      from the checkpoint images.  For example, a pipe file descriptor with
      one end in the checkpointed process and the other end in a separate
      process (that was not part of the checkpointed process tree) cannot be
      restored because after checkpoint the pipe will be broken.
      
      There are also cases where the user wants to use a new file during
      restore instead of the original file at checkpoint time.  For example,
      the user wants to change the log file of a process from /path/to/oldlog
      to /path/to/newlog.
      
      In these cases, criu's caller should set up a new file descriptor to be
      inherited by the restored process and specify the file descriptor with the
      --inherit-fd command line option.  The argument of --inherit-fd has the
      format fd[%d]:%s, where %d tells criu which of its own file descriptors
      to use for restoring the file identified by %s.
      
      As a debugging aid, if the argument has the format debug[%d]:%s, it tells
      criu to write out the string after colon to the file descriptor %d.  This
      can be used, for example, as an easy way to leave a "restore marker"
      in the output stream of the process.
      
      It's important to note that inherit fd support breaks applications
      that depend on the state of the file descriptor being inherited.  So,
      consider inherit fd only for specific use cases that you know for sure
      won't break the application.
      
      For examples please visit http://criu.org/Category:HOWTO.
      
      v2: Added a check in send_fd_to_self() to avoid closing an inherit fd.
          Also, as an extra measure of caution, added checks in the inherit fd
          look up functions to make sure that the inherit fd hasn't been reused.
          The patch also includes minor cosmetic changes.
      Signed-off-by: 's avatarSaied Kazemi <saied@google.com>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      0412152f