No description
Find a file
Pavel Emelyanov 73e303c8e2 rst: Fix rst_tcp_sock memory management
In current scheme we grow an array with realloc()-s then
memcpy() the result into rst_mem. I propose to get rid
or realloc-s (we already have objects for the data we
need to keep) and memcpy-s (and put objects directly
into rst_mem at the end).

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-07-14 13:59:21 +03:00
arch ppc64: Fix broken SYS V shared memory support 2015-06-24 17:57:38 +03:00
contrib Try to determine the bind mount file for dockerinit 2015-01-12 13:20:06 +03:00
Documentation Revert "cgroups: Add ability to reuse existing cgroup yard directory" 2015-06-16 19:15:20 +03:00
include rst: Fix rst_tcp_sock memory management 2015-07-14 13:59:21 +03:00
lib libcriu: add ability to use local options structure 2015-07-13 14:55:00 +03:00
pie pie: piegen -- Fix memory leak 2015-07-13 14:53:45 +03:00
protobuf seccomp: add initial support for SECCOMP_MODE_STRICT 2015-06-24 17:38:32 +03:00
pycriu pycriu: images: pb2dict: preserve fields order with "pretty" option 2015-06-24 17:56:31 +03:00
scripts don't assume the kernel has CONFIG_SECCOMP 2015-07-13 14:50:35 +03:00
test test/zdtm: Adding ppc64 support 2015-07-13 14:52:26 +03:00
.gitignore Makefile: allow optional local rules 2015-05-05 13:43:55 +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 Use run-time page size where it matters 2015-04-22 15:39:05 +03:00
cgroup.c Revert "cgroups: Add ability to reuse existing cgroup yard directory" 2015-06-16 19:15:20 +03:00
COPYING Add LGPL licence for library directory 2013-04-01 12:29:06 +04:00
cr-check.c add a criu check test for PTRACE_O_SUSPEND_SECCOMP 2015-07-13 14:50:28 +03:00
cr-dedup.c page-read: Explicitly mark ENOENT with return code 2015-03-13 14:42:11 +03:00
cr-dump.c cr-dump: wait killed processes 2015-07-13 14:57:41 +03:00
cr-errno.c cr-errno: initial commit 2014-12-19 18:58:46 +03:00
cr-exec.c creds: fail to dump when creds in thread group don't match 2015-06-24 17:38:35 +03:00
cr-restore.c rst: Fix rst_tcp_sock memory management 2015-07-14 13:59:21 +03:00
cr-service.c add RPC options for for --enable-fs and --skip_mount 2015-04-27 14:57:27 +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: Avoid full exception trace when meeting unknown magic in image (v2) 2015-05-30 00:32:27 +03:00
crtools crtools: rename binary to criu 2013-04-30 20:17:55 +04:00
crtools.c Revert "cgroups: Add ability to reuse existing cgroup yard directory" 2015-06-16 19:15:20 +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 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 Fix check for open_image() ret 2015-05-05 13:37:16 +03:00
files.c files: Print file type for BUG 2015-05-29 13:57:18 +03:00
fsnotify.c Fix pr_perror() usage 2015-05-05 13:36:29 +03:00
image-desc.c img: Introduce v1.1 images (v2) 2015-04-14 15:18:32 +03:00
image.c img: Remove empty lazy images after dump 2015-05-30 00:31:52 +03:00
ipc_ns.c sysctl: Pass number of requests in argument 2015-05-05 14:14:24 +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 lsm: get host lsm type from the host mntns 2015-05-19 22:36:59 +03:00
libnetlink.c nlk: Add error callback to do_rtnl_req 2015-01-22 18:54:37 +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 make: Be able to force turning off piegen 2015-06-19 12:22:54 +03:00
Makefile.config seccomp: add initial support for SECCOMP_MODE_STRICT 2015-06-24 17:38:32 +03:00
Makefile.crtools pie: piegen -- Slightly rework the building procedure 2015-06-08 23:53:27 +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: tune the root mount before mounting a root yard 2015-06-11 19:48:42 +03:00
namespaces.c Fix pr_perror() usage 2015-05-05 13:36:29 +03:00
net.c net: don't call netns_entry__free_unpacked for uninitialized pointer (v2) 2015-06-11 19:50:03 +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 cr_page_server(): avoid using uninit variable 2015-05-07 18:37:46 +03:00
pagemap-cache.c pagemap-cache: Use page.h helpers 2014-02-21 16:29:41 +04:00
parasite-syscall.c pie: relocs -- Fix compilation on ARM 2015-06-16 11:40:20 +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 don't assume the kernel has CONFIG_SECCOMP 2015-07-13 14:50:35 +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 cr-dump: wait killed processes 2015-07-13 14:57:41 +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 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 rst: Fix rst_tcp_sock memory management 2015-07-14 13:59:21 +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 rst: Fix rst_tcp_sock memory management 2015-07-14 13:59:21 +03:00
sk-unix.c unix: Don't dump external peer w/o name 2015-06-08 23:36:21 +03:00
sockets.c sockets: Don't print warning in case collection succeeded 2015-06-08 23:35:20 +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: Make CTL_READ nonfatal 2015-05-12 15:58:58 +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 tunfile_open(): don't leak fd on error path 2015-05-08 15:32:17 +03:00
util.c proc: Don't use parent proc_self_fd cached descriptor 2015-05-30 00:32:08 +03:00
uts_ns.c sysctl: Pass number of requests in argument 2015-05-05 14:14:24 +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