No description
Find a file
Tycho Andersen a4b48a2dcc cgroup: actually detect cgroupns bind mounts correctly
Initially, the cgroupns patchset that went into the Ubuntu kernels had the
nsroot= argument in mountopts, which allowed us to distinguish between
cgroupfs mounts. The upstream kernel doesn't have this (the reasoning was
that it showed up in the root field of mountinfo), so all cgroup mounts
look idential if we don't consider the root mount, and we wrongly detect
the mounts as bind mounts. Instead, let's remember the root path and
compare this when considering when a mount is a bind mount.

This patch is a little ugly because it intorduces cgroup specific behavior
into the generic code, which we've thus far been able to avoid. One way to
deal with this might be able to add a ->sb_equal hook to the fstype struct
that could compare mountinfos' superblocks, and then fall back to
mounts_sb_equal if that isn't present. Or we can leave this specific code
in the generic bits until more of these appear. Either way is fine with me.

v2: move the cgroup specific code to mounts_sb_equal()

Signed-off-by: Tycho Andersen <tycho.andersen@canonical.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
2016-09-06 19:00:23 +03:00
contrib contrib/docker_cr.sh: fix a typo in a comment 2016-08-11 16:18:43 +03:00
coredump coredump: Rename dir to coredump 2016-06-28 13:04:58 +03:00
crit crit/decode: set default opts['nopl'] to False 2016-05-30 13:47:54 +03:00
criu cgroup: actually detect cgroupns bind mounts correctly 2016-09-06 19:00:23 +03:00
Documentation criu: fix some spelling errors in criu.txt 2016-06-28 13:12:59 +03:00
images ipc/sysctl: c/r kernel.{msg_next_id,sem_next_id,shm_next_id} 2016-09-06 18:58:26 +03:00
lib criu: almost fix building on Alpine Linux 2016-07-09 22:04:26 +03:00
scripts build/nmk: simplify try-cc and return true/false 2016-08-11 16:18:43 +03:00
test zdtm: check a case when a root of sub-mntns is read-only 2016-09-06 19:00:21 +03:00
.gitignore uninstall: use --record with setup.py, v2 2016-05-06 14:38:29 +03:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
.travis.yml travis: turn on alpine build 2016-09-06 19:00:21 +03:00
COPYING COPYING: fix a typo in a preamble 2016-08-11 16:18:43 +03:00
CREDITS Add the CREDITS file 2012-07-30 13:52:37 +04:00
INSTALL.md build: Add INSTALL.md and update "make help" 2016-05-06 14:38:29 +03:00
Makefile build/make: return to make from top directory 2016-08-01 18:38:32 +03:00
Makefile.install build/make: return to make from top directory 2016-08-01 18:38:32 +03:00
Makefile.versions criu: Version 2.5 2016-08-15 15:40:05 +03:00
README.md Add ascciinema tour on basic criu features. 2016-06-16 16:37:06 +03:00

CRIU (Checkpoint and Restore in Userspace)

An utility to checkpoint/restore tasks. Using this tool, you can freeze a running application (or part of it) and checkpoint it to a hard drive as a collection of files. You can then use the files to restore and run the application from the point it was frozen at. The distinctive feature of the CRIU project is that it is mainly implemented in user space.

The project home is at http://criu.org.

Pages worth starting with are:

A video tour on basic CRIU features

CRIU introduction

How to contribute