No description
Find a file
Andrew Vagin 308741d059 mount: detect sibling mounts correctly
I found the meaning of comparing basename-s for mounts in mount_qual(),
which was removed in v2.1-49-gbcf40bf.

I think it was an attempt to detect siblings (propagated mounts).

Actually it's wrong to compare only basenames for such mounts and
we need to generate full paths for them.

For example:
28 25 0:25 /	/sys/fs/cgroup/devices rw shared:10 - cgroup cgroup rw,devices
29 28 0:49 /	/sys/fs/cgroup/devices/101/xxx/yyy ...
38 35 0:25 /101 /sys/fs/cgroup/devices/ rw master:10 - cgroup cgroup rw,devices
39 38 0:49 /	/sys/fs/cgroup/devices/xxx/yyy ...

28 and 38 are in the one shared group. 29 and 39 siblings and probably
one of them was mounted and another one was propagated.

This patch adds a function to generate a sibling mount point and
use it to propagate mounts

Signed-off-by: Andrew Vagin <avagin@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
2016-06-28 13:04:58 +03:00
contrib Add OverlayFS support to docker_cr.sh 2015-08-18 18:14:32 +03:00
crit crit/decode: set default opts['nopl'] to False 2016-05-30 13:47:54 +03:00
criu mount: detect sibling mounts correctly 2016-06-28 13:04:58 +03:00
criu-coredump criu-coredump: merge criu-coredump project 2016-06-28 13:04:00 +03:00
Documentation cg: Add documentation about dumping specified controllers 2016-06-28 13:04:00 +03:00
images join-ns: add join-ns option to criu CLI and RPC 2016-06-01 14:44:44 +03:00
lib crit: Show no payload for image objects 2016-05-30 13:47:54 +03:00
scripts travis: enable compilation for ppc64le 2016-05-06 14:38:29 +03:00
test test: add manual test for criu-coredump 2016-06-28 13:04:00 +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: enable compilation for ppc64le 2016-05-06 14:38:29 +03:00
COPYING Add LGPL licence for library directory 2013-04-01 12:29:06 +04: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 Makefile: suppress git describe warnings 2016-05-30 13:47:54 +03:00
Makefile.install build: Add uninstall action 2016-04-27 14:13:35 +03:00
Makefile.versions criu: Version 2.3 2016-06-14 11:41:17 +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