[CRIU] [PATCH v3 00/11] lazy-pages: add support for remote pages
Mike Rapoport
rppt at linux.vnet.ibm.com
Sat Jun 4 23:18:36 PDT 2016
Hi Adrian,
On Fri, Jun 03, 2016 at 05:18:19PM +0200, Adrian Reber wrote:
> I had a look at your patchset and I also tried to migrate a process with
> it. I was able to migrate a small process without a problem but if fails
> with a process that requires 200MB of memory. Trying to understand where
> it fails I wished for some more debug output. Especially at the highest
> verbosity level I would like to see how many pages were already
> transferred, how many are missing, which page is transferred. Something
> like that.
>
> The failure with the 200MB process happens at:
>
> ppb_resize_pipe()
> ret = fcntl(ppb->p[0], F_SETPIPE_SZ, new_size * PAGE_SIZE);
>
> with following parameters new_size = 2093056
Thanks for testing.
I'll try to reproduce and see what's going on there...
> This is the first time ppb_resize_pipe() is called during my test.
>
> So overall I really like this. Thanks for doing this!
>
> Oh, and the From address from this mail (rapoport at linux.vnet.ibm.com)
> does not exist.
It should be rppt at linux.vnet.ibm.com ...
> Adrian
>
> On Wed, Jun 01, 2016 at 12:01:33AM +0300, Mike Rapoport wrote:
> > From: Mike Rapoport <rppt at linux.vnet.ibm.com>
> >
> > Hi,
> >
> > This is essentially v2 plus small fix. I'm resending the entire set to see
> > if CI fill find some other bugs :)
> >
> > v3 changes:
> > * fixed initialization of pp->own_iovs, thanks Mr. Jenkins
> >
> > v2 changes:
> > * added helpers to page-xfer to reduce code duplication
> > * modified protocol between dump side page server and lazy pages daemon as
> > per Pavel's comments
> > * some changes in the way parasite_dump_pages_seized is refactored. There's
> > still more to improve here, even without addition of lazy pages support :)
> >
> > TODO:
> > * refactor page-reader to support random access and remote page reads
> > * make lazy-pages non-blocking with respect to #PFs
> > * performance imporvements
> >
> > Mike Rapoport (11):
> > criu: page-pipe: introduce page_pipe_buf manipulation helpers
> > criu: page_pipe_buf: add PPB_LAZY flag
> > criu: page-pipe: introduce page_pipe_split
> > criu: page-xfer: move code aroud
> > criu: page-xfer: intorduce helpers for sending IOVs
> > criu: page-xfer: add ability to skip writing lazy pages
> > criu: page-xfer: add PS_IOV_GET interface
> > criu: uffd: add --lazy-addr option
> > criu: slightly refactor memory dump to support delaying it
> > criu: page-pipe: add ability to allocate IOVs
> > criu: lazy-pages: enable remoting of lazy pages
> >
> > criu/cr-dump.c | 57 +-
> > criu/crtools.c | 4 +
> > criu/include/cr_options.h | 1 +
> > criu/include/mem.h | 3 +-
> > criu/include/page-pipe.h | 9 +-
> > criu/include/page-xfer.h | 4 +-
> > criu/include/parasite-syscall.h | 1 -
> > criu/include/pstree.h | 1 +
> > criu/mem.c | 52 +-
> > criu/page-pipe.c | 329 ++++++++++--
> > criu/page-read.c | 2 +-
> > criu/page-xfer.c | 1116 +++++++++++++++++++++------------------
> > criu/parasite-syscall.c | 2 +
> > criu/shmem.c | 4 +-
> > criu/uffd.c | 35 +-
> > 15 files changed, 992 insertions(+), 628 deletions(-)
> >
> > --
> > 1.9.1
> >
>
More information about the CRIU
mailing list