summary refs log tree commit diff stats
path: root/arch_init.c
diff options
context:
space:
mode:
authorJuan Quintela <quintela@redhat.com>2015-02-12 19:02:42 +0100
committerJuan Quintela <quintela@redhat.com>2015-03-16 14:32:47 +0100
commit6e1dea46b89e137ee1593ded5566d5371a61d304 (patch)
tree32c60155e4311dc5d9acbbb47346f564644854d9 /arch_init.c
parentbf1ae1f4dc348650fb7f32a3fcc278f60a7b1bf6 (diff)
downloadfocaccia-qemu-6e1dea46b89e137ee1593ded5566d5371a61d304.tar.gz
focaccia-qemu-6e1dea46b89e137ee1593ded5566d5371a61d304.zip
ram: make all save_page functions take a uint64_t parameter
It used to be an int, but then we can't pass directly the
bytes_transferred parameter, that would happen later in the series.

Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Amit Shah <amit.shah@redhat.com>
Diffstat (limited to 'arch_init.c')
-rw-r--r--arch_init.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/arch_init.c b/arch_init.c
index 691b5e2e91..f1551ed97f 100644
--- a/arch_init.c
+++ b/arch_init.c
@@ -584,6 +584,7 @@ static int ram_save_page(QEMUFile *f, RAMBlock* block, ram_addr_t offset,
                          bool last_stage)
 {
     int bytes_sent;
+    uint64_t bytes_xmit;
     int cont;
     ram_addr_t current_addr;
     MemoryRegion *mr = block->mr;
@@ -597,17 +598,21 @@ static int ram_save_page(QEMUFile *f, RAMBlock* block, ram_addr_t offset,
 
     /* In doubt sent page as normal */
     bytes_sent = -1;
+    bytes_xmit = 0;
     ret = ram_control_save_page(f, block->offset,
-                           offset, TARGET_PAGE_SIZE, &bytes_sent);
+                           offset, TARGET_PAGE_SIZE, &bytes_xmit);
+    if (bytes_xmit) {
+        bytes_sent = bytes_xmit;
+    }
 
     XBZRLE_cache_lock();
 
     current_addr = block->offset + offset;
     if (ret != RAM_SAVE_CONTROL_NOT_SUPP) {
         if (ret != RAM_SAVE_CONTROL_DELAYED) {
-            if (bytes_sent > 0) {
+            if (bytes_xmit > 0) {
                 acct_info.norm_pages++;
-            } else if (bytes_sent == 0) {
+            } else if (bytes_xmit == 0) {
                 acct_info.dup_pages++;
             }
         }