No description
Find a file
Cyrill Gorcunov 4a2a290137 make: Generate offsets from linked files only
Instead of generating offsets from early compiled
object files (one day the offsets obtained from
there might be changed during linkage stage) better
to get them from a final stage where all object
files involved are linked into complete binary blob.

That happened that at early stage we indeed were using
only single file per parasite and restorer but at present
there a couple of file involved (and will be more in
future) so we need a safe approach.

Also note the symbols being exported are prefixed as
"__export_". This is easier approach for now. Putting
such symbols into separate section requires a way
more efforts to handle.

The main reason of having two files (Elf object
and binary blob) is to get 1:1 mapping between
symbols definition and their position in binary
target.

The exported symbols name addresses are obtained
from object file and used as offsets in binary
target.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2012-04-18 18:22:15 +04:00
Documentation docs: Add 'check' option description 2012-03-02 14:23:45 +04:00
include make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
test Drop <sys/user.h> to fix PAGE_SIZE declaration 2012-04-16 14:38:49 +04:00
tools tools: Update commit bot 2012-02-07 18:37:03 +04:00
.gitignore Update .gitignore 2012-01-19 22:00:11 +04:00
.mailmap repo: Add mailmap file 2012-03-25 23:31:20 +04:00
COPYING Add COPYING file 2011-12-05 14:11:05 +04:00
cr-check.c check: We need CAP_SYS_RESOURCE granted to perform testing 2012-04-05 21:32:40 +04:00
cr-dump.c output: add "0x" to hex prints using sed 2012-04-16 12:33:35 +04:00
cr-restore.c make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
cr-show.c output: add "0x" to hex prints manually 2012-04-16 12:34:01 +04:00
crtools.c crtools: Add long options 2012-04-16 14:23:05 +04:00
file-ids.c kcmp: Introduce generic object ID generator 2012-04-09 18:01:18 +04:00
files.c files: Simplify fd-s restore 2012-04-18 16:27:46 +04:00
gen-offsets.sh make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
ipc_ns.c show: Introduce ->show callback for fdset 2012-03-27 12:01:14 +04:00
kcmp-ids.c output: add "0x" to hex prints using sed 2012-04-16 12:33:35 +04:00
libnetlink.c log: log-engine slight redesign 2012-03-02 01:05:43 +04:00
log.c log: Open log file with O_APPEND 2012-04-11 22:06:00 +04:00
Makefile make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
Makefile.inc make: Eliminate deps build on no-deps targets in zdtm 2012-01-25 19:14:39 +04:00
namespaces.c output: add "0x" to hex prints using sed 2012-04-16 12:33:35 +04:00
parasite-syscall.c Drop <sys/user.h> to fix PAGE_SIZE declaration 2012-04-16 14:38:49 +04:00
parasite.c make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
pie.lds.S make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
pipes.c files: Put fdinfo entry on fdinfo_list_entry 2012-04-18 16:03:14 +04:00
proc_parse.c proc_parse: Fix task name parsing 2012-04-17 20:11:21 +04:00
ptrace.c output: add "0x" to hex prints using sed 2012-04-16 12:33:35 +04:00
rbtree.c Add rbtree helpers 2012-02-28 19:13:47 +04:00
README Drop kernel patching from README 2012-01-29 16:26:36 +04:00
restorer-log.c restorer: Cleanup - drop always_inline attribute from write_ helpers 2012-04-02 22:45:14 +04:00
restorer.c make: Generate offsets from linked files only 2012-04-18 18:22:15 +04:00
sockets.c files: Put fdinfo entry on fdinfo_list_entry 2012-04-18 16:03:14 +04:00
sysctl.c show: Use pr_msg for showing contents on console 2012-03-02 11:12:59 +04:00
util-net.c util-net: Make send/recv fds carry fd flags in message 2012-04-10 18:36:13 +04:00
util.c Drop <sys/user.h> to fix PAGE_SIZE declaration 2012-04-16 14:38:49 +04:00
uts_ns.c show: Introduce ->show callback for fdset 2012-03-27 12:01:14 +04:00

crtools
=======

An utility to checkpoint/restore tasks.

Some code snippets are borrowed from

 - Linux kernel (http://kernel.org/)
 - git (http://git-scm.com/)
 - kvm-tools (https://github.com/penberg/linux-kvm)
 - ptrace-parasite (https://code.google.com/p/ptrace-parasite/)

Many thanks to these projects.

Licensed under GPLv2 (http://www.gnu.org/licenses/gpl-2.0.txt)