1. 22 Aug, 2014 2 commits
  2. 21 Aug, 2014 1 commit
    • Saied Kazemi's avatar
      Added AUFS support. · d8b41b65
      Saied Kazemi authored
      The AUFS support code handles the "bad" information that we get from
      the kernel in /proc/<pid>/map_files and /proc/<pid>/mountinfo files.
      For details see comments in sysfs_parse.c.
      
      The main motivation for this work was dumping and restoring Docker
      containers which by default use the AUFS graph driver.  For dump,
      --aufs-root <container_root> should be added to the command line options.
      For restore, there is no need for AUFS-specific command line options
      but the container's AUFS filesystem should already be set up before
      calling criu restore.
      
      [ xemul: With AUFS files sometimes, in particular -- in case of a
        mapping of an executable file (likekely the one created at elf load),
        in the /proc/pid/map_files/xxx link target we see not the path
        by which the file is seen in AUFS, but the path by which AUFS
        accesses this file from one of its "branches". In order to fix
        the path we get the info about branches from sysfs and when we
        meet such a file, we cut the branch part of the path. ]
      Signed-off-by: 's avatarSaied Kazemi <saied@google.com>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      d8b41b65
  3. 20 Aug, 2014 2 commits
  4. 19 Aug, 2014 20 commits
  5. 18 Aug, 2014 1 commit
  6. 15 Aug, 2014 11 commits
  7. 14 Aug, 2014 3 commits
    • Andrey Vagin's avatar
      zdtm: add a small program to create a zdtm container (v2) · 47fae013
      Andrey Vagin authored
      I didn't find a way how to do that with help "unshare".
      It's simpler to write this program. It looks better than tricks in
      zdtm.sh.
      
      v2: proxify exit status
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Acked-by: 's avatarSerge E. Hallyn <serge.hallyn@ubuntu.com>
      Acked-by: 's avatarRuslan Kuprieiev <kupruser@gmail.com>
      Acked-by: 's avatarChristopher Covington <cov@codeaurora.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      47fae013
    • Andrey Vagin's avatar
      criu: allow the root task to handle SIGCHLD · 0b33bac3
      Andrey Vagin authored
      If criu process attaches to the root task (it happens for opts.swrk_restore
      and opts.restore_detach) with ptrace, then any signal delivered to the root
      would be also delivered to criu. The latter woult treat the former to die
      due to this delivery and would abort the restore.
      
      Fix it by checking that criu (current == NULL) gets ptrace notification
      (si_code == CLD_TRAPPED) about signal delivered (si_status = SIGCHLD,
      no other signals are allowed by the restoring tasks).
      
      This patch fixes the following error of static/zombie00:
      
      Execute zdtm/live/static/zombie00
      ./zombie00 --pidfile=zombie00.pid --outfile=zombie00.out
      Dump 2207
      Restore
      Test: zdtm/live/static/zombie00, Result: FAIL
      ==================================== ERROR ====================================
      Restore log: /root/git/orig/criu/test/dump/static/zombie00/2207/1/restore.log
      (00.026826) Error (cr-restore.c:1085): 2207 killed by signal 17
      (00.026985) Error (cr-restore.c:1706): Restoring FAILED.
      ================================= ERROR OVER =================================
      
      Reported-by: Mr Jenkins
      Cc: Pavel Emelyanov <xemul@parallels.com>
      Cc: Tycho Andersen <tycho.andersen@canonical.com>
      Signed-off-by: 's avatarAndrey Vagin <avagin@openvz.org>
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      0b33bac3
    • Pavel Emelyanov's avatar
      cg: Use relative paths in cgroup dirs image · bcd16496
      Pavel Emelyanov authored
      Before the patch cg tree section from cgroup00 test looked like this
      
      {
      	cnames: "name=zdtmtst"
      	dirs: 	{
      		path: "/subcg"
      		children: 		{
      			path: "/subcg/subsubcg"
      			children: <empty>
      			properties: <empty>
      		}
      
      		properties: <empty>
      	}
      
      }
      
      this /subsg in the children is excessive. Turn this into directory names.
      Now the section looks like
      
      {
      	cnames: "name=zdtmtst"
      	dirs: 	{
      		dir_name: "subcg"
      		children: 		{
      			dir_name: "subsubcg"
      			children: <empty>
      			properties: <empty>
      		}
      
      		properties: <empty>
      	}
      
      }
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      Acked-by: 's avatarTycho Andersen <tycho.andersen@canonical.com>
      bcd16496