[CRIU] [PATCHv3 0/7] Large pages support for aarch64/ppc64
Mike Rapoport
rppt at linux.vnet.ibm.com
Mon Apr 9 08:42:16 MSK 2018
On Sat, Apr 07, 2018 at 12:40:14AM +0100, Dmitry Safonov wrote:
> v3 Changes:
> o PAGE_SIZE as a global in PIEs doesn't work on aarch64,
> I'll need to add relocs support to compel there eventually.
> Revert this simplification to v1.
>
> v2 Changes:
> o Add patches for global variables in PIEs
> o Simplify ARCH_HAS_LONG_PAGES
> o cache PAGE_SIZE and PAGE_SHIFT values
> (as nitpicked by Mike)
>
> TLDR; CRIU doesn't work if:
> on aarch64 it's when PAGE_SIZE!=4K,
> on ppc64 it's when PAGE_SIZE!=64K
>
> Cc: Adrian Reber <areber at redhat.com>
> Cc: Mike Rapoport <rppt at linux.vnet.ibm.com>
>
> Dmitry Safonov (7):
> criu: Remove PAGE_IMAGE_SIZE
> parasite: Rename misnamed nr_pages
> compel/criu: Add ARCH_HAS_LONG_PAGES to PIE binaries
> criu/dump: Fix size of personality buffer
> criu/log: Define log buffer length without PAGE_SIZE
> criu/proc: Define BUF_SIZE without PAGE_SIZE dependency
What about buf[PAGE_SIZE] in crui/mem:restore_priv_vma_content?
Do you intend to rely on C99 dynamic arrays or just forgot the patch? ;-)
> ppc64/aarch64: Dynamically define PAGE_SIZE
> compel/include/rpc-pie-priv.h | 3 +++
> compel/plugins/std/infect.c | 17 ++++++++++++
> compel/src/lib/infect.c | 3 +++
> criu/arch/aarch64/crtools.c | 3 +++
> criu/arch/ppc64/crtools.c | 3 +++
> criu/cr-dump.c | 3 ++-
> criu/cr-restore.c | 3 +++
> criu/crtools.c | 1 -
> criu/include/image.h | 5 ----
> criu/include/restorer.h | 3 +++
> criu/log.c | 3 ++-
> criu/pie/parasite.c | 10 ++++----
> criu/pie/restorer.c | 16 ++++++++++++
> criu/proc_parse.c | 6 ++---
> include/common/arch/aarch64/asm/page.h | 45 ++++++++++++++++++++++++--------
> include/common/arch/ppc64/asm/page.h | 47 ++++++++++++++++++++++++----------
> 16 files changed, 130 insertions(+), 41 deletions(-)
>
> --
> 2.13.6
>
--
Sincerely yours,
Mike.
More information about the CRIU
mailing list