diff options
author | Juan Quintela <quintela@redhat.com> | 2015-02-12 19:02:42 +0100 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2015-03-16 14:32:47 +0100 |
commit | 6e1dea46b89e137ee1593ded5566d5371a61d304 (patch) | |
tree | 32c60155e4311dc5d9acbbb47346f564644854d9 /arch_init.c | |
parent | bf1ae1f4dc348650fb7f32a3fcc278f60a7b1bf6 (diff) |
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.c | 11 |
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++; } } |