[CRIU] [PATCH 0/6] lazy-pages: always use pre-copy for stack

Andrei Vagin avagin at virtuozzo.com
Fri Aug 17 00:14:39 MSK 2018


Applied, thanks!

On Mon, Aug 13, 2018 at 04:29:07PM +0300, Mike Rapoport wrote:
> Hi,
> 
> Using lazy restore for the current stack causes interesting effects in the
> behaviour of the restored process. For instance, return from a system call
> or signal handling take completely different paths when the page containing
> the current stack frame is not present.
> 
> We can force pre-copy of the stack pages with almost no cost.
> 
> I'd appreciate if ppc64 and s390 people will confirm that my definitions of
> REG_SP() for these architecture are correct :)
> 
> Mike Rapoport (6):
>   compel: add APIs to get stack pointers
>   criu: cleanup stale declarations of parasite_{init,fini}_threads_seized
>   criu: dump: prepare parasite control for threads at infect time
>   criu: dump: get stack pointers of all threads early
>   criu: mem: introduce generate_vma_iovs helper function
>   lazy-pages: don't mark current stack page as lazy
> 
>  .../src/lib/include/uapi/asm/infect-types.h        |   1 +
>  .../arm/src/lib/include/uapi/asm/infect-types.h    |   1 +
>  .../ppc64/src/lib/include/uapi/asm/infect-types.h  |   1 +
>  .../s390/src/lib/include/uapi/asm/infect-types.h   |   1 +
>  .../x86/src/lib/include/uapi/asm/infect-types.h    |   1 +
>  compel/include/uapi/infect.h                       |   3 +
>  compel/src/lib/infect.c                            |  10 +++
>  criu/cr-dump.c                                     |   3 +-
>  criu/include/parasite-syscall.h                    |   9 +-
>  criu/include/pstree.h                              |   2 +
>  criu/mem.c                                         | 100 +++++++++++++--------
>  criu/parasite-syscall.c                            |  50 +++++++++--
>  12 files changed, 133 insertions(+), 49 deletions(-)
> 
> -- 
> 2.7.4
> 


More information about the CRIU mailing list