[CRIU] [PATCHv3 00/10] Compatible (mostly) fixes

Andrew Vagin avagin at virtuozzo.com
Mon Aug 8 09:38:06 PDT 2016


On Mon, Aug 08, 2016 at 03:57:07PM +0300, Dmitry Safonov wrote:
> v3: Turned on Alpine Linux build (and fixed compat_iovec warnings);
>     Definition of restore_tls() was _only_ under CONFIG_COMPAT,
>     while it has been called outside in generic code -- Reported by @avagin,
>     thanks. (I wounder, how it has successfuly linked?)
> 
> v2: rebase on criu-dev with autofixed conflict by git
> 
> There is three patches for issues I've found while was introducing
> CONFIG_COMPAT compile&make option, that do nothing with compat:
>   build/nmk: simplify try-cc and return true/false
>   make: drop check-build-packages - we can use try-cc now
>   make: propagate config DEFINES in CFLAGS
> 
> For other patches: first four -- some fixes for compatible vdso
> on 3.X kernels (found while testing criu on vzkernel with compat
> patches set). Mostly -- there are different symbols in vdso for
> compat & native tasks, the sizes of vdso blob differ from native
> to compat and it's hard to make mremap() for vdso vma working --
> so use arch_prctl() API in the case when mremap() does not work.
> 
> The last two patches in the set introduce CONFIG_COMPAT option
> which make gcc-multilib & glibc6-i686 *optional* dependencies
> for building CRIU.
>

Acked-by: Andrew Vagin <avagin at virtuozzo.com>

Thank you!

> Thanks,
>              Dmitry
> 
> Dmitry Safonov (10):
>   compat/vDSO/restorer: flush rt symtable from criu
>   compat/vdso: compare 32-bit vdso by symbols
>   compat: move rt-vdso with arch_prctl on mremap fail
>   compat/x86/vdso: add 32-bit vdso symbols to array
>   build/nmk: simplify try-cc and return true/false
>   make: drop check-build-packages - we can use try-cc now
>   make: propagate config DEFINES in CFLAGS
>   feature-test: add CONFIG_COMPAT compile option
>   criu: wrap compatible code with CONFIG_COMPAT
>   travis: turn on alpine build
> 
>  .travis.yml                          |  1 +
>  criu/Makefile.config                 | 23 +++++++++++++++++------
>  criu/Makefile.crtools                |  1 -
>  criu/Makefile.packages               | 15 ++++++---------
>  criu/arch/x86/Makefile               |  6 ++++--
>  criu/arch/x86/Makefile.syscalls      |  8 +++-----
>  criu/arch/x86/include/asm/restorer.h | 12 +++++++-----
>  criu/arch/x86/include/asm/vdso.h     |  7 +++++--
>  criu/arch/x86/restorer.c             |  4 ++--
>  criu/arch/x86/sys-exec-tbl.c         |  8 ++++----
>  criu/page-pipe.c                     |  4 ++--
>  criu/parasite-syscall.c              |  4 ++--
>  criu/pie/Makefile                    |  9 ++++++---
>  criu/pie/Makefile.library            |  7 ++++---
>  criu/pie/parasite-blob.h             |  2 +-
>  criu/pie/parasite-vdso.c             | 29 +++++++++++++++++++++++++++--
>  scripts/feature-tests.mak            | 12 ++++++++++++
>  scripts/nmk/scripts/utils.mk         |  8 +++-----
>  18 files changed, 106 insertions(+), 54 deletions(-)
> 
> -- 
> 2.9.0
> 


More information about the CRIU mailing list