aboutsummaryrefslogtreecommitdiff
path: root/kvm-all.c
diff options
context:
space:
mode:
authorJuan Quintela <quintela@redhat.com>2013-11-05 15:45:46 +0100
committerJuan Quintela <quintela@redhat.com>2014-01-13 14:04:55 +0100
commitc9dd46fc0d64d9f314aa3c220d4aff9d01ab778e (patch)
tree809a391b0d466706f32547e16441e4636a609a73 /kvm-all.c
parent747afd5bcdc90f608c75d95f8a629a9cfc838c57 (diff)
downloadqemu-c9dd46fc0d64d9f314aa3c220d4aff9d01ab778e.zip
qemu-c9dd46fc0d64d9f314aa3c220d4aff9d01ab778e.tar.gz
qemu-c9dd46fc0d64d9f314aa3c220d4aff9d01ab778e.tar.bz2
kvm: refactor start address calculation
Signed-off-by: Juan Quintela <quintela@redhat.com> Reviewed-by: Orit Wasserman <owasserm@redhat.com>
Diffstat (limited to 'kvm-all.c')
-rw-r--r--kvm-all.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/kvm-all.c b/kvm-all.c
index 308dfba..cb62ba4 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -382,7 +382,8 @@ static int kvm_get_dirty_pages_log_range(MemoryRegionSection *section,
{
unsigned int i, j;
unsigned long page_number, c;
- hwaddr addr, addr1;
+ hwaddr addr;
+ ram_addr_t start = section->offset_within_region + section->mr->ram_addr;
ram_addr_t ram_addr;
unsigned int pages = int128_get64(section->size) / getpagesize();
unsigned int len = (pages + HOST_LONG_BITS - 1) / HOST_LONG_BITS;
@@ -399,9 +400,8 @@ static int kvm_get_dirty_pages_log_range(MemoryRegionSection *section,
j = ffsl(c) - 1;
c &= ~(1ul << j);
page_number = (i * HOST_LONG_BITS + j) * hpratio;
- addr1 = page_number * TARGET_PAGE_SIZE;
- addr = section->offset_within_region + addr1;
- ram_addr = section->mr->ram_addr + addr;
+ addr = page_number * TARGET_PAGE_SIZE;
+ ram_addr = start + addr;
cpu_physical_memory_set_dirty_range(ram_addr,
TARGET_PAGE_SIZE * hpratio);
} while (c != 0);