No description
Find a file
Cyrill Gorcunov da429bd433 lib: Don't use alloca over net received size
Better to obtain error if there is no free memory
than smashing the stack.

A rule of thumb for alloca() based functions is to
use them with predefined small sizes (such as we
do in swapping builtin sizes for parasite engine).

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-11-17 10:53:02 +03:00
arch add seccomp syscall 2015-11-11 15:57:27 +03:00
contrib Add OverlayFS support to docker_cr.sh 2015-08-18 18:14:32 +03:00
Documentation Build pie objects separately 2015-10-14 15:53:07 +03:00
include lock: print a message if a futex is locked for more than 120 second 2015-11-17 10:52:22 +03:00
lib lib: Don't use alloca over net received size 2015-11-17 10:53:02 +03:00
pie seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
protobuf seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
pycriu seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
scripts make: Don't forget to clean up obj-x 2015-10-26 12:11:10 +03:00
test test: add a test for seccomp filter inheritance 2015-11-17 10:51:24 +03:00
.gitignore build: ignore/clean usr/ 2015-11-05 15:35:17 +03:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
.travis.yml travis: add libcap-dev 2015-07-23 15:12:50 +03:00
action-scripts.c scripts: print an error message if one or scripts failed 2015-11-05 15:19:27 +03:00
aio.c aio: Fix vma->start printing format on arm 2014-12-30 15:38:25 +03:00
bfd.c bfd: add breadchr 2015-10-27 22:51:09 +03:00
bitmap.c bitmap -- Add few helpers for bits manipulations 2015-11-12 11:15:02 +03:00
cgroup.c cgroup.c: use pr_err() with '\n' 2015-10-09 18:28:07 +03:00
COPYING Add LGPL licence for library directory 2013-04-01 12:29:06 +04:00
cr-check.c check: add a check for seccomp filters c/r 2015-11-17 10:51:21 +03:00
cr-dedup.c page-read: Explicitly mark ENOENT with return code 2015-03-13 14:42:11 +03:00
cr-dump.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
cr-errno.c cr-errno: initial commit 2014-12-19 18:58:46 +03:00
cr-exec.c ptrace: split task_seize into seize_catch_task and seize_wait_task 2015-08-07 13:47:11 +03:00
cr-restore.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
cr-service.c cr-service: fix return result for not supported cpuinfo 2015-11-09 11:56:17 +03:00
cr-show.c show: read a second magic when it's required 2015-04-21 16:15:44 +03:00
CREDITS Add the CREDITS file 2012-07-30 13:52:37 +04:00
crit crit: fix decode usage help 2015-11-05 15:24:04 +03:00
crtools crtools: rename binary to criu 2013-04-30 20:17:55 +04:00
crtools.c criu: Fault injection core 2015-10-19 12:42:29 +03:00
Dockerfile Revert "travis: install libseccomp-dev" 2015-07-14 18:28:05 +03:00
eventfd.c img: Rename fdset -> imgset 2014-09-30 21:48:10 +04:00
eventpoll.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
fault-injection.c criu: Fault injection core 2015-10-19 12:42:29 +03:00
fifo.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
file-ids.c kcmp: Stop showing ids tree 2015-08-18 18:17:31 +03:00
file-lock.c lock: parse the lock field in fdinfo if it's avaliable (v2) 2015-04-27 14:53:24 +03:00
files-ext.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
files-reg.c files: linkat_hard() should return errno of linkat 2015-11-13 19:59:07 +03:00
files.c files: don't leak a file descriptor on an error path 2015-11-05 15:29:46 +03:00
fsnotify.c fsnotify: Lookup for watchee path before doing irmap 2015-11-05 15:39:17 +03:00
image-desc.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
image.c img: Remove empty lazy images after dump 2015-05-30 00:31:52 +03:00
ipc_ns.c ipc: save local user and group id-s for ipc objects 2015-10-26 12:20:12 +03:00
irmap.c irmap: don't leak irmap objects in --irmap-scan-path 2015-09-28 22:02:51 +03:00
kcmp-ids.c kcmp: Stop showing ids tree 2015-08-18 18:17:31 +03:00
kerndat.c tcp_read_sysctl_limits: hide a useless error, leave a warning 2015-10-19 12:32:22 +03:00
libnetlink.c netlink: increase the receive buffer size 2015-09-04 18:26:51 +03:00
log.c Need bigger log buffer to avoid message truncation 2015-07-13 15:19:14 +03:00
lsm.c don't assume the kernel has CONFIG_SECCOMP 2015-07-13 14:50:35 +03:00
Makefile build: ignore/clean usr/ 2015-11-05 15:35:17 +03:00
Makefile.config build: get rid of vestigial Makefile.config test 2015-07-15 17:34:14 +03:00
Makefile.crtools seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
Makefile.inc make: Allow to install in custom dirs 2015-10-05 13:24:23 +03:00
mem.c Pass task_size to vma_area_is_private() 2015-08-03 17:14:18 +03:00
mount.c mount: wait when mntns will be created to get its root (v2) 2015-11-17 10:46:00 +03:00
namespaces.c mount: wait when mntns will be created to get its root (v2) 2015-11-17 10:46:00 +03:00
net.c net: Dont print error in rule save 2015-11-12 16:31:21 +03:00
netfilter.c util: Add flags to cr_system 2015-11-12 16:31:19 +03:00
page-pipe.c log: Use pr_quelled helper 2014-09-03 20:56:58 +04:00
page-read.c page-read: Fix compilation on arm (2) 2015-11-12 23:51:15 +03:00
page-xfer.c page-server: Fine grained corking control (v3) 2015-11-10 16:00:25 +03:00
pagemap-cache.c Replace remaining hard-coded TASK_SIZE use 2015-08-03 17:14:19 +03:00
parasite-syscall.c Replace remaining hard-coded TASK_SIZE use 2015-08-03 17:14:19 +03:00
pipes.c pipe: add ability to restore both ends of inhereted pipes 2015-07-15 17:35:59 +03:00
plugin.c Append newline when using pr_err() 2015-10-09 18:28:00 +03:00
proc_parse.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
protobuf-desc.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
protobuf.c img: Don't create empty images 2015-03-16 15:58:32 +03:00
pstree.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
ptrace.c ptrace: skip ptraced zombies 2015-11-05 15:19:02 +03:00
rbtree.c code: Fix spaced indentation where found 2012-08-11 21:36:03 +04:00
README.md Updated README 2015-05-19 22:38:06 +03:00
rst-malloc.c Use run-time page_size() for mremap 2015-07-28 13:38:30 +03:00
sd-daemon.c systemd socket activation support 2013-12-12 09:58:50 +04:00
sd-daemon.h systemd socket activation support 2013-12-12 09:58:50 +04:00
seccomp.c seccomp: add support for SECCOMP_MODE_FILTER 2015-11-17 10:51:20 +03:00
security.c security: add cr_fchown 2015-02-10 16:54:31 +03:00
seize.c collect: Print info about collection finish 2015-11-11 19:03:09 +03:00
shmem.c page-read: Explicitly mark ENOENT with return code 2015-03-13 14:42:11 +03:00
sigframe.c sigframe: cast the pointer to the field ucontext::uc_sigmask to k_rtsigset_t 2014-04-08 15:36:09 +04:00
signalfd.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
sk-inet.c can_dump_inet_sk(): fix error message 2015-11-05 15:22:59 +03:00
sk-netlink.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
sk-packet.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
sk-queue.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
sk-tcp.c tcp: disable the repair mode only for sockets of a current process (v3) 2015-07-15 17:35:21 +03:00
sk-unix.c unix: turn down unlink warning 2015-11-11 15:42:49 +03:00
sockets.c socket: values of snd and rcv buffer should be divide into two 2015-10-27 22:55:36 +03:00
stats.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
string.c string: Add strlcat helper 2013-11-29 15:36:07 +04:00
sysctl.c sysctl: restore sysctl-vs synchronously 2015-11-05 15:31:06 +03:00
sysfs_parse.c Ignore mnt_id value for AUFS file descriptors. 2015-02-09 14:07:40 +03:00
timerfd.c check: do timerfd check on mainline kernel 2015-10-19 12:37:32 +03:00
tty.c tty: open all terminals with O_NOCTTY 2015-11-17 10:48:56 +03:00
tun.c check: also check tun support in mainline 2015-10-19 12:37:34 +03:00
util.c net: Dont print error in rule save 2015-11-12 16:31:21 +03:00
uts_ns.c sysctl: move sysctl calls to usernsd 2015-10-05 13:16:14 +03:00
vdso.c vdso: merge per arch vdso.c file in a common one 2015-09-10 14:07:20 +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:

How to contribute