[CRIU] [PATCH 1/9] compel: Initial commit for rework

Pavel Emelyanov xemul at virtuozzo.com
Mon Aug 29 07:28:24 PDT 2016


On 08/24/2016 07:47 PM, Cyrill Gorcunov wrote:
> We're going to rework compel to support parasite
> engine and plugin structure so that CRIU would simply
> use the scaffolds.
> 
> The plugins gonna provide syscalls, in/out routunes,
> file descriptor transfer and such, just like we currently
> do in CRIU itself.
> 
> Here we shuffle the directories and fixup various things.
> 
> Note the @hostprogs are now left, probably will bring it back
> one day. For same reason tests won't work for now.
> 
> Moreover since we're goig to ship compel/libcompel together
> with criu and same time we are to *use* compel during CRIU
> building procedure, the @hostprogs mode likely to be removed
> completely and compel is to build two times in case of
> cross-compile: once when building criu and second when
> prepare its shipping. This is in TODO list currently.
> 
> Signed-off-by: Cyrill Gorcunov <gorcunov at openvz.org>
> ---
>  Makefile                                           |   7 +-
>  Makefile.compel                                    |  38 +++
>  Makefile.versions                                  |   3 +-
>  compel/Makefile                                    |  47 ++--
>  compel/arch/aarch64/handle-elf.c                   |  21 --
>  compel/arch/aarch64/include/handle-elf.h           |  11 -
>  compel/arch/aarch64/src/lib/handle-elf.c           |  34 +++
>  compel/arch/aarch64/src/lib/include/handle-elf.h   |  11 +
>  compel/arch/arm/include/handle-elf.h               |  11 -
>  compel/arch/arm/{ => src/lib}/handle-elf.c         |  13 +-
>  compel/arch/arm/src/lib/include/handle-elf.h       |  11 +
>  compel/arch/ppc64/handle-elf.c                     |  21 --
>  compel/arch/ppc64/include/handle-elf.h             |  12 -
>  compel/arch/ppc64/src/lib/handle-elf.c             |  34 +++
>  compel/arch/ppc64/src/lib/include/handle-elf.h     |  13 +
>  compel/arch/x86/handle-elf.c                       |  16 --
>  .../x86/plugins/include/asm/std/syscall-types.h    |  53 +++++
>  compel/arch/x86/plugins/std/call32.S               |  71 ++++++
>  .../plugins/std/syscalls/syscall-common-x86-32.S   |  36 +++
>  .../plugins/std/syscalls/syscall-common-x86-64.S   |  21 ++
>  compel/arch/x86/plugins/std/syscalls/syscall32.c   |  85 +++++++
>  .../arch/x86/plugins/std/syscalls/syscall_32.tbl   |  94 ++++++++
>  .../arch/x86/plugins/std/syscalls/syscall_64.tbl   | 105 +++++++++
>  compel/arch/x86/scripts/pack.lds.S                 |  30 +++
>  compel/arch/x86/src/lib/handle-elf.c               |  29 +++
>  compel/arch/x86/{ => src/lib}/include/handle-elf.h |  18 +-
>  compel/include/elf32-types.h                       |  16 ++
>  compel/include/elf64-types.h                       |  16 ++
>  compel/include/piegen.h                            |  22 +-
>  compel/include/uapi/compel.h                       |  27 +++
>  compel/include/uapi/elf32-types.h                  |  20 --
>  compel/include/uapi/elf64-types.h                  |  20 --
>  compel/include/uapi/int.h                          |  15 ++
>  compel/include/uapi/piegen-err.h                   |  10 -
>  compel/include/uapi/plugins.h                      |  35 +++
>  compel/include/uapi/types.h                        |  16 +-
>  compel/plugins/Makefile                            | 127 ++++++++++
>  compel/plugins/include/uapi/plugin-std.h           |   6 +
>  compel/plugins/include/uapi/std/string.h           |  28 +++
>  compel/plugins/include/uapi/std/syscall-types.h    |  55 +++++
>  compel/plugins/std/std.c                           |  89 +++++++
>  compel/plugins/std/string.c                        | 262 +++++++++++++++++++++
>  compel/{ => src/lib}/handle-elf-32.c               |   0
>  compel/{ => src/lib}/handle-elf.c                  | 103 ++++----
>  compel/{ => src}/main.c                            |   1 +
>  45 files changed, 1443 insertions(+), 270 deletions(-)

No, that's too much for a single commit. I will have to rebase this a few times,
don't forget.

If the whole set is to toss the files around, then turn on rename detection and
re-send. But it looks like this patch does MUCH more than this, so split. Please.



More information about the CRIU mailing list