[CRIU] [PATCH 0/8] x86: Preparations for x86-32 CRIU mode

Cyrill Gorcunov gorcunov at openvz.org
Mon May 11 09:06:16 PDT 2015


There were a few series already in x86-32 mode, the last
one titled "x86: Parasite code preparation reworked" had
a nit (thanks to ldufour@ for spotting it). Thus updated
series below.

The main change for plain x86-64 is that we're using object
files directly without calling objcopy on build.

For x86-32 it is a step forward: system calls are now
building if we do

	ARCH="ia32" make

on x86-64 host. Note the c/r cycle is not ready yet but
this seris rather a scaffold for it.

Please review.

I pushed this series to git at github.com:cyrillos/criu.git
into branch ia32.

Cyrill Gorcunov (8):
  piegen: Implement tool building, v2
  x86: Start using native object relocatable files in parasite code
  arch: x86-32 syscalls -- Wire in syscalls generation
  x86: Add 32bit variant of TASK_SIZE
  pie: x86-32 -- Build parasite code without PIC
  pie: x86-32 -- Prepare parasite head
  arch: x86-32 -- Be able to build 32bit CRIU
  pie: x86 -- Adjust size of parasite and restorer code

 Makefile                                  |  29 ++-
 arch/x86/Makefile                         |  18 ++
 arch/x86/include/asm/parasite.h           |   4 +
 arch/x86/include/asm/restore.h            |   9 +
 arch/x86/include/asm/restorer.h           |  31 ++-
 arch/x86/include/asm/syscall32.h          |  25 +++
 arch/x86/include/asm/types.h              |  10 +-
 arch/x86/parasite-head.S                  |  23 ++
 arch/x86/restorer.c                       |   3 +-
 arch/x86/syscalls/syscall-common-x86-32.S |  36 ++++
 arch/x86/syscalls/syscall32.c             |  85 ++++++++
 arch/x86/syscalls/syscall_32.tbl          |  88 ++++++++
 arch/x86/vdso-pie.c                       |  29 +++
 cr-restore.c                              |   4 +
 parasite-syscall.c                        |   6 +-
 pie/Makefile                              |  37 +++-
 pie/parasite.c                            |   6 +-
 pie/pie-reloc.lds.S.in                    |  27 +++
 pie/piegen/Makefile                       |  14 ++
 pie/piegen/elf-x86-32.c                   |  16 ++
 pie/piegen/elf-x86-64.c                   |  16 ++
 pie/piegen/elf.c                          | 338 ++++++++++++++++++++++++++++++
 pie/piegen/main.c                         | 127 +++++++++++
 pie/piegen/piegen.h                       |  34 +++
 24 files changed, 1007 insertions(+), 8 deletions(-)
 create mode 100644 arch/x86/include/asm/syscall32.h
 create mode 100644 arch/x86/syscalls/syscall-common-x86-32.S
 create mode 100644 arch/x86/syscalls/syscall32.c
 create mode 100644 arch/x86/syscalls/syscall_32.tbl
 create mode 100644 pie/pie-reloc.lds.S.in
 create mode 100644 pie/piegen/Makefile
 create mode 100644 pie/piegen/elf-x86-32.c
 create mode 100644 pie/piegen/elf-x86-64.c
 create mode 100644 pie/piegen/elf.c
 create mode 100644 pie/piegen/main.c
 create mode 100644 pie/piegen/piegen.h

-- 
2.1.0



More information about the CRIU mailing list