[CRIU] [PATCH 0/2] compel: Implement std plugin

Cyrill Gorcunov gorcunov at openvz.org
Fri Sep 23 06:14:39 PDT 2016


Here is a draft where std plugin impleneted and criu start using it.
Of course I expect a bunch of fixes on top.

Cyrill Gorcunov (2):
  compel: Split host and lib files
  compel: plugins,std -- Build syscalls and used in CRIU, v2

 Makefile                                           |   6 +-
 compel/Makefile                                    |   5 +-
 compel/arch/aarch64/plugins/include/asm/linkage.h  |   1 +
 compel/arch/aarch64/plugins/include/asm/prologue.h |   1 +
 .../aarch64/plugins/include/asm/syscall-types.h    |  26 ++++
 .../aarch64/plugins/std/syscalls/Makefile.syscalls |   1 +
 .../plugins/std/syscalls/gen-sys-exec-tbl.pl       |   1 +
 .../aarch64/plugins/std/syscalls/gen-syscalls.pl   |   1 +
 .../aarch64/plugins/std/syscalls}/syscall-aux.S    |   0
 .../aarch64/plugins/std/syscalls}/syscall-aux.h    |   0
 .../aarch64/plugins/std}/syscalls/syscall-common.S |   0
 .../arch/aarch64/plugins/std/syscalls/syscall.def  |   1 +
 compel/arch/arm/plugins/include/asm/linkage.h      |   1 +
 compel/arch/arm/plugins/include/asm/prologue.h     |   1 +
 .../arch/arm/plugins/include/asm/syscall-types.h   |  26 ++++
 .../arm/plugins/std/syscalls/Makefile.syscalls     |  59 ++++++++
 .../arm/plugins/std/syscalls}/gen-sys-exec-tbl.pl  |   0
 .../arch/arm/plugins/std/syscalls}/gen-syscalls.pl |   8 +-
 .../arch/arm/plugins/std/syscalls}/syscall-aux.S   |   0
 .../arch/arm/plugins/std/syscalls}/syscall-aux.h   |   0
 .../arm/plugins/std}/syscalls/syscall-common.S     |   0
 .../arch/arm/plugins/std}/syscalls/syscall.def     |   0
 compel/arch/ppc64/plugins/include/asm/linkage.h    |   1 +
 compel/arch/ppc64/plugins/include/asm/prologue.h   |   1 +
 .../arch/ppc64/plugins/include/asm/syscall-types.h |  26 ++++
 .../ppc64/plugins/std/syscalls/Makefile.syscalls   |  57 ++++++++
 .../plugins/std}/syscalls/syscall-common-ppc64.S   |   0
 .../ppc64/plugins/std}/syscalls/syscall-ppc64.tbl  |   0
 .../arch/x86/plugins/include/asm/syscall-types.h   |  10 +-
 .../x86/plugins/std/syscalls/Makefile.syscalls     | 122 ++++++++++++++++
 compel/plugins/Makefile                            | 127 +++--------------
 compel/plugins/include/uapi/std/asm/.gitignore     |   0
 compel/plugins/include/uapi/std/syscall-types.h    |   2 +-
 compel/plugins/std/std.c                           |   4 +-
 compel/plugins/std/string.c                        |   3 +
 criu/Makefile                                      |  26 ++--
 criu/Makefile.config                               |  14 +-
 criu/Makefile.crtools                              |   4 +
 criu/arch/aarch64/Makefile                         |   2 +
 criu/arch/aarch64/Makefile.syscalls                |  52 -------
 criu/arch/aarch64/include/asm/types.h              |  25 +---
 criu/arch/aarch64/restorer.c                       |   2 +-
 criu/arch/aarch64/syscalls/syscall.def             |   1 -
 criu/arch/aarch64/vdso-pie.c                       |   2 +-
 criu/arch/arm/Makefile                             |   2 +
 criu/arch/arm/Makefile.syscalls                    |  52 -------
 criu/arch/arm/include/asm/types.h                  |  24 +---
 criu/arch/arm/restorer.c                           |   2 +-
 criu/arch/ppc64/Makefile                           |   2 +
 criu/arch/ppc64/Makefile.syscalls                  |  57 --------
 criu/arch/ppc64/include/asm/types.h                |  25 +---
 criu/arch/ppc64/restorer.c                         |   2 +-
 criu/arch/ppc64/vdso-pie.c                         |   2 +-
 criu/arch/x86/Makefile                             |   2 +
 criu/arch/x86/Makefile.syscalls                    | 158 ---------------------
 criu/arch/x86/crtools.c                            |   2 +-
 criu/arch/x86/include/asm/restorer.h               |   2 +-
 criu/arch/x86/include/asm/types.h                  |  49 +------
 criu/arch/x86/restorer.c                           |   2 +-
 criu/arch/x86/sigaction_compat.c                   |   2 +-
 criu/arch/x86/syscalls/syscall-common-x86-32.S     |  36 -----
 criu/arch/x86/syscalls/syscall-common-x86-64.S     |  21 ---
 criu/arch/x86/syscalls/syscall32.c                 |  85 -----------
 criu/arch/x86/syscalls/syscall_32.tbl              |  94 ------------
 criu/arch/x86/syscalls/syscall_64.tbl              | 105 --------------
 criu/arch/x86/vdso-pie.c                           |   2 +-
 criu/cr-restore.c                                  |   2 +-
 criu/fsnotify.c                                    |   2 +-
 criu/include/lock.h                                |   2 +-
 criu/kerndat.c                                     |   2 +-
 criu/parasite-syscall.c                            |   2 +-
 criu/pie/Makefile                                  |  13 +-
 criu/pie/Makefile.library                          |   2 +
 criu/pie/log-simple.c                              |   2 +-
 criu/pie/parasite-vdso.c                           |   2 +-
 criu/pie/parasite.c                                |   7 +-
 criu/pie/restorer.c                                |   7 +-
 criu/pie/util-fd.c                                 |   2 +-
 criu/pie/util.c                                    |   2 +-
 criu/shmem.c                                       |   2 +-
 criu/uffd.c                                        |   2 +-
 81 files changed, 450 insertions(+), 948 deletions(-)
 create mode 120000 compel/arch/aarch64/plugins/include/asm/linkage.h
 create mode 120000 compel/arch/aarch64/plugins/include/asm/prologue.h
 create mode 100644 compel/arch/aarch64/plugins/include/asm/syscall-types.h
 create mode 120000 compel/arch/aarch64/plugins/std/syscalls/Makefile.syscalls
 create mode 120000 compel/arch/aarch64/plugins/std/syscalls/gen-sys-exec-tbl.pl
 create mode 120000 compel/arch/aarch64/plugins/std/syscalls/gen-syscalls.pl
 rename {criu/arch/aarch64/include/asm => compel/arch/aarch64/plugins/std/syscalls}/syscall-aux.S (100%)
 rename {criu/arch/aarch64/include/asm => compel/arch/aarch64/plugins/std/syscalls}/syscall-aux.h (100%)
 rename {criu/arch/aarch64 => compel/arch/aarch64/plugins/std}/syscalls/syscall-common.S (100%)
 create mode 120000 compel/arch/aarch64/plugins/std/syscalls/syscall.def
 create mode 120000 compel/arch/arm/plugins/include/asm/linkage.h
 create mode 120000 compel/arch/arm/plugins/include/asm/prologue.h
 create mode 100644 compel/arch/arm/plugins/include/asm/syscall-types.h
 create mode 100644 compel/arch/arm/plugins/std/syscalls/Makefile.syscalls
 rename {criu/arch/scripts/arm => compel/arch/arm/plugins/std/syscalls}/gen-sys-exec-tbl.pl (100%)
 rename {criu/arch/scripts/arm => compel/arch/arm/plugins/std/syscalls}/gen-syscalls.pl (92%)
 rename {criu/arch/arm/include/asm => compel/arch/arm/plugins/std/syscalls}/syscall-aux.S (100%)
 rename {criu/arch/arm/include/asm => compel/arch/arm/plugins/std/syscalls}/syscall-aux.h (100%)
 rename {criu/arch/arm => compel/arch/arm/plugins/std}/syscalls/syscall-common.S (100%)
 rename {criu/arch/arm => compel/arch/arm/plugins/std}/syscalls/syscall.def (100%)
 create mode 120000 compel/arch/ppc64/plugins/include/asm/linkage.h
 create mode 120000 compel/arch/ppc64/plugins/include/asm/prologue.h
 create mode 100644 compel/arch/ppc64/plugins/include/asm/syscall-types.h
 create mode 100644 compel/arch/ppc64/plugins/std/syscalls/Makefile.syscalls
 rename {criu/arch/ppc64 => compel/arch/ppc64/plugins/std}/syscalls/syscall-common-ppc64.S (100%)
 rename {criu/arch/ppc64 => compel/arch/ppc64/plugins/std}/syscalls/syscall-ppc64.tbl (100%)
 create mode 100644 compel/arch/x86/plugins/std/syscalls/Makefile.syscalls
 create mode 100644 compel/plugins/include/uapi/std/asm/.gitignore
 delete mode 100644 criu/arch/aarch64/Makefile.syscalls
 delete mode 120000 criu/arch/aarch64/syscalls/syscall.def
 delete mode 100644 criu/arch/arm/Makefile.syscalls
 delete mode 100644 criu/arch/ppc64/Makefile.syscalls
 delete mode 100644 criu/arch/x86/Makefile.syscalls
 delete mode 100644 criu/arch/x86/syscalls/syscall-common-x86-32.S
 delete mode 100644 criu/arch/x86/syscalls/syscall-common-x86-64.S
 delete mode 100644 criu/arch/x86/syscalls/syscall32.c
 delete mode 100644 criu/arch/x86/syscalls/syscall_32.tbl
 delete mode 100644 criu/arch/x86/syscalls/syscall_64.tbl

-- 
2.7.4



More information about the CRIU mailing list