[CRIU] Combining pre-copy and post-copy

Adrian Reber adrian at lisas.de
Wed Jul 27 04:27:28 PDT 2016


Thanks for getting the remote uffd support into criu-dev.

I am now looking at combining pre-copy and post-copy. Luckily there is
for each pagemap entry the status if the page is in a parent checkpoint
or not. Which makes it easier to decide if the page should be handled by
uffd or not.

Unfortunately this information is not available in the restorer. The
restorer only gets a list of VMAs and if the page should handled by uffd
is decided by vma_entry_can_be_lazy()

        return ((e->flags & MAP_ANONYMOUS) &&
                (e->flags & MAP_PRIVATE) &&
                !(vma_entry_is(e, VMA_AREA_VDSO)) &&
                !(vma_entry_is(e, VMA_AREA_VSYSCALL)));

Which has no information about parents. What would be the best way to
include the information if the page exists in a parent checkpoint and
therefore should not be handled by uffd?

Does VmaEntry already know about parents? Or do we need a new flag?

		Adrian


More information about the CRIU mailing list