No description
Find a file
Andrey Vagin a1ca6efa50 service: allocate buffers for messages dinamically (v2)
Currently we use a static buffer, but it is too small.

Error (cr-service.c:58): Failed unpacking request: Success
Error (cr-service.c:694): Can't recv request: Success
data too short after length-prefix of 1217

v2: use recv instead on recvmsg

Reported-by: Ross Boucher <rboucher@gmail.com>
Cc: Ross Boucher <rboucher@gmail.com>
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Acked-by: Ruslan Kuprieiev <rkuprieiev@cloudlinux.com>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-04-21 16:09:09 +03:00
arch aarch64: fix undefined "struct user_regs_struct_t" error 2015-04-14 16:05:46 +03:00
contrib Try to determine the bind mount file for dockerinit 2015-01-12 13:20:06 +03:00
Documentation doc: add documentation for new mount flags 2015-04-10 17:54:54 +03:00
include service: allocate buffers for messages dinamically (v2) 2015-04-21 16:09:09 +03:00
lib service: allocate buffers for messages dinamically (v2) 2015-04-21 16:09:09 +03:00
pie tty: Rework tty_driver structure 2015-04-02 20:20:01 +03:00
protobuf mnt: add --enable-external-sharing flag 2015-04-10 17:54:12 +03:00
pycriu crit: pycriu: images: fix images incoding and add more comments 2015-04-14 15:18:33 +03:00
scripts make: Rebuild version if git commit id is changed 2015-04-21 16:07:23 +03:00
test zdtm: make -- Don't fail if symlink already exist 2015-04-21 16:06:04 +03:00
.gitignore make: Rebuild version if git commit id is changed 2015-04-21 16:07:23 +03:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
.travis.yml travis: add python-ipaddr as a dep 2015-02-09 14:07:07 +03:00
action-scripts.c scripts: Exit early if no scripts passed 2014-11-14 15:51:28 +04:00
aio.c aio: Fix vma->start printing format on arm 2014-12-30 15:38:25 +03:00
bfd.c bfd: Don't leak image-open flags into bfdopen 2015-03-16 15:58:14 +03:00
cgroup.c img: Introduce empty images 2015-03-13 14:42:54 +03:00
COPYING Add LGPL licence for library directory 2013-04-01 12:29:06 +04:00
cr-check.c pass "bool for_dump" argument down to collect_mntinfo() and parse_mountinfo() 2015-04-03 17:55:18 +03:00
cr-dedup.c page-read: Explicitly mark ENOENT with return code 2015-03-13 14:42:11 +03:00
cr-dump.c img: Always assume images to be v1.1 2015-04-14 22:08:59 +03:00
cr-errno.c cr-errno: initial commit 2014-12-19 18:58:46 +03:00
cr-exec.c dump: remove useless arguments from seize_task() 2014-11-07 17:14:54 +04:00
cr-restore.c vma: Unify private VMAs testing 2015-04-01 12:36:46 +03:00
cr-service.c service: allocate buffers for messages dinamically (v2) 2015-04-21 16:09:09 +03:00
cr-show.c add netns protobuf entry and image, also add conf to net device entry 2015-04-09 18:59:17 +03:00
CREDITS Add the CREDITS file 2012-07-30 13:52:37 +04:00
crit crit: gather and parse arguments in a proper way 2015-02-09 14:08:22 +03:00
crtools crtools: rename binary to criu 2013-04-30 20:17:55 +04:00
crtools.c opts: fix formatting for options 2015-04-10 17:55:44 +03:00
Dockerfile test: add ability to execute tests in a docker container 2015-03-24 11:05:47 +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
fifo.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
file-ids.c files-ids: generate id-s accoding with mnt_id, st->st_dev and st->st_ino 2014-04-21 22:39:28 +04:00
file-lock.c img: Introduce empty images 2015-03-13 14:42:54 +03:00
files-ext.c img: Introduce the struct cr_img 2014-09-30 21:48:13 +04:00
files-reg.c reg-files: skip size for O_APPEND|O_WRONLY files, v2 2015-03-20 16:29:37 +03:00
files.c fdinfo: Don't hide fdinfos' restore errors 2015-04-09 23:14:11 +03:00
fsnotify.c remove some double ;;s 2015-03-31 22:09:38 +03:00
image-desc.c img: Introduce v1.1 images (v2) 2015-04-14 15:18:32 +03:00
image.c img: Always assume images to be v1.1 2015-04-14 22:08:59 +03:00
ipc_ns.c sysctl: Remove dead CTL_PRINT|_SHOW code 2015-01-27 16:18:27 +03:00
irmap.c img: Introduce empty images 2015-03-13 14:42:54 +03:00
kcmp-ids.c kcmp: Fix ret code comparison 2014-04-22 12:51:15 +04:00
kerndat.c kerndat: Mark get_last_cap static 2015-01-23 20:19:09 +03:00
libnetlink.c nlk: Add error callback to do_rtnl_req 2015-01-22 18:54:37 +03:00
log.c log: Don't modify global @errno in __print_on_level 2015-03-27 14:06:20 +03:00
Makefile test: add ability to execute tests in a docker container 2015-03-24 11:05:47 +03:00
Makefile.config crtools: check for setproctitle_init 2014-09-02 16:14:39 +04:00
Makefile.crtools aio: Dump AIO rings 2014-12-26 18:13:36 +03:00
Makefile.inc install: install criu-service logrotate config 2014-02-18 12:39:50 +04:00
mem.c vma: Unify private VMAs testing 2015-04-01 12:36:46 +03:00
mount.c mnt: don't match the wrong nested bind mount 2015-04-16 12:17:22 +03:00
namespaces.c revert 246367e4e4 "add walk_all flag to walk_namespaces" 2015-04-14 22:34:40 +03:00
net.c revert 246367e4e4 "add walk_all flag to walk_namespaces" 2015-04-14 22:34:40 +03:00
netfilter.c iptables: use cr_system instead of system 2013-10-02 20:09:37 +04:00
page-pipe.c log: Use pr_quelled helper 2014-09-03 20:56:58 +04:00
page-read.c img: Introduce empty images 2015-03-13 14:42:54 +03:00
page-xfer.c remove some double ;;s 2015-03-31 22:09:38 +03:00
pagemap-cache.c pagemap-cache: Use page.h helpers 2014-02-21 16:29:41 +04:00
parasite-syscall.c remove some double ;;s 2015-03-31 22:09:38 +03:00
pipes.c fd: Factor out inheriting FDs code 2015-01-12 14:46:51 +03:00
plugin.c plugin: Rework plugins API, v2 2014-09-03 20:48:36 +04:00
proc_parse.c simplify the "ignore filesystem-subtype" logic 2015-04-14 15:15:19 +03:00
protobuf-desc.c criu: add constants about user namespaces 2014-11-07 17:00:32 +04:00
protobuf.c img: Don't create empty images 2015-03-16 15:58:32 +03:00
pstree.c mnt: Add comment about mntns to tasks assignment 2015-04-01 12:37:23 +03:00
ptrace.c ptrace: call wait only if PTRACE_SEIZE was successful 2015-02-24 21:44:23 +03:00
rbtree.c code: Fix spaced indentation where found 2012-08-11 21:36:03 +04:00
README Update README file so that it looks more informative on github front page 2014-01-24 20:42:08 +04:00
rst-malloc.c whitespace-at-eol cleanup 2013-12-12 10:00:45 +04: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
security.c security: add cr_fchown 2015-02-10 16:54:31 +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 Do not call listen() when SO_REUSEADDR is off 2015-02-16 13:18:32 +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 Do not call listen() when SO_REUSEADDR is off 2015-02-16 13:18:32 +03:00
sk-unix.c userns: save uid-s from a target userns (v2) 2014-11-07 17:15:45 +04:00
sockets.c sk: Restore sockets bufs via usernsd 2015-02-13 16:11:38 +04: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: Remove dead CTL_PRINT|_SHOW code 2015-01-27 16:18:27 +03:00
sysfs_parse.c Ignore mnt_id value for AUFS file descriptors. 2015-02-09 14:07:40 +03:00
timerfd.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
tty.c tty: Drop TTY_SUBTYPE_SLAVE from /dev/console and /dev/tty 2015-04-02 20:20:23 +03:00
tun.c img: Remove O_OPT and COLLECT_OPTIONAL 2015-03-13 14:42:01 +03:00
util.c image: Add comments about VMA_AREA constants and drop FORCE_READ flag 2015-03-04 17:48:47 +03:00
uts_ns.c ns: Factor out namespace switching call 2014-09-30 21:54:11 +04:00

criu
====

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
* Kernel configuration, compilation, etc: http://criu.org/Installation
* A simple example of usage: http://criu.org/Simple_loop
* More sophisticated example with graphical app: http://criu.org/VNC