[CRIU] [PATCH] criu: add make lazy support to crit

Adrian Reber adrian at lisas.de
Wed May 11 10:31:57 PDT 2016


On Wed, May 11, 2016 at 04:06:48PM +0300, Pavel Emelyanov wrote:
> On 05/11/2016 10:19 AM, Adrian Reber wrote:
> > On Fri, May 06, 2016 at 02:57:13PM +0300, Pavel Emelyanov wrote:
> >> Sorry for such a long delay in review. Here are my comments, inline.
> >>
> >> On 04/29/2016 11:39 AM, Adrian Reber wrote:
> >>> From: Adrian Reber <areber at redhat.com>
> >>>
> >>> This enables crit to remove all memory pages from a checkpoint
> >>> directory which can be lazily restored using userfaultfd. This
> >>> changes the pagemap.img and pages.img to no longer contain pages
> >>> which can be handled by userfaultfd (MAP_PRIVATE && MAP_ANON).
> >>>
> >>> Usage:
> >>>
> >>>  $ crit/crit make-lazy /tmp/4/ /tmp/5
> >>
> >> We already have the pagemaps manipulation code called 'dedup'. And it
> >> sits in criu binary :) I don't insist in implementing make-lazy in criu
> >> too, crit looks better place, but any ideas how to make dedup and
> >> make-lazy be better aligned with each other?
> > 
> > Ah, I always thought dedup was only used during restore to remove
> > already restored pages from the checkpoint. I was not aware that it can
> > also run standalone to clean up checkpoints.
> > 
> > If I understand the code correctly the dedup option removes pages from
> > parent checkpoints (pre-dump) which are also present in the child
> > checkpoints, right?
> 
> Yes.
> 
> > This sounds indeed just like what I tried to do with crit with
> > make-lazy. Checkpoint manipulation sounds much easier in python but if
> > the code already exists for dedup I am also undecided. I think python
> > makes more sense as I also want to provide the possibility to undo the
> > 'make-lazy' operation: Create a 'normal' checkpoint from the two parts
> > which result from 'make-lazy'. I will try to address your code comments
> > and send a second version of the patch.
> 
> So you have an idea how to clean up all this mess we've made with dedup :D
> Thanks heaps!!!

No, no, no ;-) I cannot clean up _all_ that mess, I try to start with my
mess and let's see if this leads to more cleanups.

		Adrian


More information about the CRIU mailing list