[CRIU] [RFC PATCH 00/12] lazy-pages: add non-#PF events handling

Mike Rapoport rppt at linux.vnet.ibm.com
Mon Jan 9 00:23:14 PST 2017


Hi,

These patches add handling of userfaultfd events other than page fault. The
required kernel patches [1] are merged into the mm tree.
The lazy-pages daemon will now be able to request fork(), mremap() and
madvise(MADV_DONTNEED) events from the kernel and properly respond to those
events for the local lazy restore case.
The remote lazy restore still requires some more work for correct
implementation of the fork() event, and I'm looking at it right now.

[1] http://marc.info/?l=linux-mm&m=148189971307409&w=2

Mike Rapoport (12):
  zdtm.py: postpone waiting for lazy-pages daemon
  util: epoll_run: fix event processing loop
  util: epoll_run: allow interrupting event polling
  lazy-pages: prepare for non-#PF events handling
  lazy-pages: track outstanding page faults
  lazy-pages: add handling of UFFD_EVENT_MADVDONTNEED
  lazy-pages: add handling of UFFD_EVENT_REMAP
  page-read: add PID for some debug printouts
  page-read: introduce dup_page_read
  lazy-pages: add userfault fd to error and debug printouts
  lazy-pages: add handling of UFFD_EVENT_FORK
  lazy-pages: request userfaultfd events during API handshake

 criu/include/pagemap.h |   7 ++
 criu/pagemap.c         |  25 ++++-
 criu/uffd.c            | 298 ++++++++++++++++++++++++++++++++++++++++++++-----
 criu/util.c            |  11 +-
 test/zdtm.py           |   8 +-
 5 files changed, 308 insertions(+), 41 deletions(-)

-- 
1.9.1



More information about the CRIU mailing list