No description
Find a file
Dmitry Safonov 6068d10cee core/x86: add compatible 32 register set
Introduced user_regs_struct32.
Other changes mainly are reforming existing code to use the new
register sets union.

For protobuf images - reuse user_x86_regs_entry for both compatible
and native tasks with enum in the beggining that describes register
set type. That's better and simpler, than introducing a new 32-bit
register set for compatible tasks. I tried to do this firstly with
oneof keyword:
499c93ae0e
But protobuf supports oneof keyword only from recent version 2.6.0,
so I tried to rework it into enum + 2 register sets:
aab4489bd4

But that did not work either because restorer pie takes gpregs as
thread_restore_args parameter and UserRegsEntry shouldn't contain
pointers, but structure objects. This may be fixed by redefining
UserRegsEntry not as typedef for UserX86RegsEntry, but containing
needed objects, than treat it right for restorer - but that's
more complicated that reusing user_x86_regs_entry.

Signed-off-by: Dmitry Safonov <dsafonov@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
2017-03-14 21:03:21 +03:00
compel compel: Drop config.h from deps 2017-03-14 21:03:20 +03:00
contrib scripts/install-debian-packages: add libnet-dev 2017-01-16 11:04:49 +03:00
coredump coredump: Rename dir to coredump 2016-06-28 13:04:58 +03:00
crit crit/decode: set default opts['nopl'] to False 2016-05-30 13:47:54 +03:00
criu core/x86: add compatible 32 register set 2017-03-14 21:03:21 +03:00
Documentation criu: change the way -v works 2017-03-02 00:19:03 +03:00
images core/x86: add compatible 32 register set 2017-03-14 21:03:21 +03:00
include/common files: Fix test and set endianess problem 2017-02-06 14:09:15 +03:00
lib lib Makefiles: integrate 2017-03-06 20:44:07 +03:00
scripts Dockerfile: add libc6-dev-i386 & gcc-multilib 2017-03-14 21:03:20 +03:00
soccr soccr: add one more test to check libsoccr_save/libsoccr_restore 2017-02-01 18:41:29 +03:00
test zdtm/socket-tcp: execute iptables with the -w option to wait the xtables lock 2017-03-06 11:44:05 +03:00
.gitignore pie: generate native and compat parasites 2017-03-14 21:03:21 +03:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
.travis.yml travis: execute tests on Alpine 2017-03-02 00:19:03 +03:00
COPYING COPYING: fix a typo in a preamble 2016-08-11 16:18:43 +03:00
CREDITS Add the CREDITS file 2012-07-30 13:52:37 +04:00
INSTALL.md Makefile.install: rm unused vars/target 2017-02-06 13:48:49 +03:00
Makefile build: compel -- Drop double targeting 2017-03-14 21:03:20 +03:00
Makefile.config make: Add .config file processing (v3) 2016-11-03 20:49:13 +03:00
Makefile.install Makefile.install: fix uninstall target 2017-03-06 20:44:08 +03:00
Makefile.versions compel: Initial commit for standalone tool 2017-03-14 21:03:20 +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