[CRIU] [PATCH 7/9] Refactor time accounting macros
Abhishek Dubey
dubeyabhishek777 at gmail.com
Sun Sep 22 07:24:56 MSK 2019
refactoring time macros as per read mode
pre-dump design.
Signed-off-by: Abhishek Dubey <dubeyabhishek777 at gmail.com>
---
criu/cr-dump.c | 8 +++++---
criu/page-xfer.c | 7 +++++++
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/criu/cr-dump.c b/criu/cr-dump.c
index 23399a9..f025e2f 100644
--- a/criu/cr-dump.c
+++ b/criu/cr-dump.c
@@ -1515,12 +1515,14 @@ static int cr_pre_dump_finish(int status)
mem_pp = dmpi(item)->mem_pp;
- if (opts.pre_dump_mode == PRE_DUMP_READ)
+ if (opts.pre_dump_mode == PRE_DUMP_READ) {
+ timing_start(TIME_MEMWRITE);
ret = page_xfer_predump_pages(item->pid->real,
&xfer, mem_pp);
- else
+ }
+ else {
ret = page_xfer_dump_pages(&xfer, mem_pp);
-
+ }
xfer.close(&xfer);
if (ret)
diff --git a/criu/page-xfer.c b/criu/page-xfer.c
index 1eeee5a..b077000 100644
--- a/criu/page-xfer.c
+++ b/criu/page-xfer.c
@@ -824,6 +824,8 @@ int page_xfer_predump_pages(int pid, struct page_xfer *xfer,
list_for_each_entry(ppb, &pp->bufs, l) {
+ timing_start(TIME_MEMDUMP);
+
aux_len = 0;
bufvec.iov_len = BUFFER_SIZE;
bufvec.iov_base = userbuf;
@@ -845,6 +847,9 @@ int page_xfer_predump_pages(int pid, struct page_xfer *xfer,
return -1;
}
+ timing_stop(TIME_MEMDUMP);
+ timing_start(TIME_MEMWRITE);
+
/* generating pagemap */
for (i = 0; i < aux_len; i++) {
@@ -875,9 +880,11 @@ int page_xfer_predump_pages(int pid, struct page_xfer *xfer,
}
}
+ timing_stop(TIME_MEMWRITE);
}
xfree(userbuf);
+ timing_start(TIME_MEMWRITE);
return dump_holes(xfer, pp, &cur_hole, NULL);
}
--
2.7.4
More information about the CRIU
mailing list