• Saied Kazemi's avatar
    rework criu check logic · 70cb4326
    Saied Kazemi authored
    The "criu check" command to check if the kernel is properly configured
    to run criu is broken.
    
    The "criu check --ms" command used to be the way to tell criu to check
    only for features that have been merged upstream.  But recent kernels
    have a set of features whose presence doesn't necessarily mean that
    dump or restore will fail but rather *may* fail depending on whether
    the process tree uses those features.
    
    This patch deprecates --ms and introduces --extra, --experimental,
    and --all.  See "criu --help" or "man criu" for more info.
    
    Typical use cases are:
    
    	$ sudo criu check
    	<zero or more warnings and errors...>
    	Looks good.
    	$ echo $?
    	0
    
    	$ sudo criu check --extra
    	<zero or more warnings and errors...>
    	Looks good.
    	$ echo $?
    	1
    
    	$ sudo criu check --extra
    	<one or more warnings...>
    	Looks good but some kernel features are missing
    	which, depending on your process tree, may cause
    	dump or restore failure.
    	$ echo $?
    	1
    
    	$ sudo criu check --feature list
    	mnt_id aio_remap timerfd tun userns fdinfo_lock seccomp_suspend \
    		seccomp_filters loginuid cgroupns
    
    	$ sudo criu check --feature mnt_id
    	Warn  (cr-check.c:283): fdinfo doesn't contain the mnt_id field
    	$ echo $?
    	1
    
    	$ sudo criu check --feature tun
    	tun is supported
    	$ echo $?
    	0
    Signed-off-by: 's avatarSaied Kazemi <saied@google.com>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@virtuozzo.com>
    70cb4326
Name
Last commit
Last update
..
arch Loading commit data...
include Loading commit data...
pie Loading commit data...
Makefile Loading commit data...
Makefile.config Loading commit data...
Makefile.crtools Loading commit data...
Makefile.version Loading commit data...
action-scripts.c Loading commit data...
aio.c Loading commit data...
bfd.c Loading commit data...
bitmap.c Loading commit data...
cgroup.c Loading commit data...
cr-check.c Loading commit data...
cr-dedup.c Loading commit data...
cr-dump.c Loading commit data...
cr-errno.c Loading commit data...
cr-exec.c Loading commit data...
cr-restore.c Loading commit data...
cr-service.c Loading commit data...
crtools.c Loading commit data...
eventfd.c Loading commit data...
eventpoll.c Loading commit data...
fault-injection.c Loading commit data...
fifo.c Loading commit data...
file-ids.c Loading commit data...
file-lock.c Loading commit data...
files-ext.c Loading commit data...
files-reg.c Loading commit data...
files.c Loading commit data...
fsnotify.c Loading commit data...
image-desc.c Loading commit data...
image.c Loading commit data...
ipc_ns.c Loading commit data...
irmap.c Loading commit data...
kcmp-ids.c Loading commit data...
kerndat.c Loading commit data...
libnetlink.c Loading commit data...
log.c Loading commit data...
lsm.c Loading commit data...
mem.c Loading commit data...
mount.c Loading commit data...
namespaces.c Loading commit data...
net.c Loading commit data...
netfilter.c Loading commit data...
page-pipe.c Loading commit data...
page-read.c Loading commit data...
page-xfer.c Loading commit data...
pagemap-cache.c Loading commit data...
parasite-syscall.c Loading commit data...
pie-util-fd.c Loading commit data...
pie-util-vdso.c Loading commit data...
pie-util.c Loading commit data...
pipes.c Loading commit data...
plugin.c Loading commit data...
proc_parse.c Loading commit data...
protobuf-desc.c Loading commit data...
protobuf.c Loading commit data...
pstree.c Loading commit data...
ptrace.c Loading commit data...
rbtree.c Loading commit data...
rst-malloc.c Loading commit data...
seccomp.c Loading commit data...
seize.c Loading commit data...
shmem.c Loading commit data...
sigframe.c Loading commit data...
signalfd.c Loading commit data...
sk-inet.c Loading commit data...
sk-netlink.c Loading commit data...
sk-packet.c Loading commit data...
sk-queue.c Loading commit data...
sk-tcp.c Loading commit data...
sk-unix.c Loading commit data...
sockets.c Loading commit data...
stats.c Loading commit data...
string.c Loading commit data...
sysctl.c Loading commit data...
sysfs_parse.c Loading commit data...
timerfd.c Loading commit data...
tty.c Loading commit data...
tun.c Loading commit data...
util.c Loading commit data...
uts_ns.c Loading commit data...
vdso.c Loading commit data...