[CRIU] [PATCH 3/3] lazy-pages: drop_iovs: mark iov as not queued

Mike Rapoport rppt at linux.vnet.ibm.com
Thu Nov 16 14:54:07 MSK 2017


If we receive only part of the IOV from the page-server we recalculate the
IOV so it will point to the area we still have to fetch. During the split,
the IOV covering the remaining area may remain marked as 'queued' and we'll
never retry fetching it.
Marking the IOV as not queued will ensure its pages will be requested
again.

Signed-off-by: Mike Rapoport <rppt at linux.vnet.ibm.com>
---
 criu/uffd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/criu/uffd.c b/criu/uffd.c
index 740f5e3..93ba0d6 100644
--- a/criu/uffd.c
+++ b/criu/uffd.c
@@ -460,6 +460,8 @@ static int drop_iovs(struct lazy_pages_info *lpi, unsigned long addr, int len)
 			addr = start;
 		}
 
+		iov->queued = false;
+
 		/*
 		 * The range completely fits into the current IOV.
 		 * If addr equals iov_base we just "drop" the
-- 
2.7.4



More information about the CRIU mailing list