[13/13] page-xfer: Don't send zero pages if none found

Submitted by Pavel Emelianov on July 6, 2017, 9:41 a.m.

Details

Message ID 6874d5ce-19c4-db2f-d06f-25a5d2edf98c@virtuozzo.com
State Accepted
Series "A set of cleanups for pagemaps/xfers/reads before master merge (resend)"
Headers show

Commit Message

Pavel Emelianov July 6, 2017, 9:41 a.m.
When page-server gets a request for an absent pagemap from lazy-pages
daemon, it should not reply with "zero pages"'.

The pagemap should be completely in sync between src and dst and dst
should never request pages that are not present. Maybe we should return
-1 here? At least we'll have a chance that dump will unroll everything...

Acked-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
---
 criu/page-xfer.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Patch hide | download patch | download mbox

diff --git a/criu/page-xfer.c b/criu/page-xfer.c
index 24fc565..d949c06 100644
--- a/criu/page-xfer.c
+++ b/criu/page-xfer.c
@@ -678,10 +678,8 @@  static int page_server_get_pages(int sk, struct page_server_iov *pi)
 	 */
 
 	if (pi->nr_pages == 0) {
-		/* no iovs found means we've hit a zero page */
 		pr_debug("no iovs found, zero pages\n");
-		pi->cmd = encode_ps_cmd(PS_IOV_ADD_F, 0);
-		return send_psi(sk, pi);
+		return -1;
 	}
 
 	pi->cmd = encode_ps_cmd(PS_IOV_ADD_F, PE_PRESENT);