qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [COMMIT 62518b8] kvm: Fix dirty log temporary buffer size


From: Anthony Liguori
Subject: [Qemu-commits] [COMMIT 62518b8] kvm: Fix dirty log temporary buffer size
Date: Fri, 22 May 2009 15:52:49 -0000

From: Jan Kiszka <address@hidden>

The buffer passed to KVM_GET_DIRTY_LOG requires one bit per page. Fix
the size calculation in kvm_physical_sync_dirty_bitmap accordingly,
avoiding allocation of extremly oversized buffers.

Signed-off-by: Jan Kiszka <address@hidden>
Signed-off-by: Anthony Liguori <address@hidden>

diff --git a/kvm-all.c b/kvm-all.c
index f4851c0..3b6b5ed 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -290,7 +290,7 @@ void kvm_physical_sync_dirty_bitmap(target_phys_addr_t 
start_addr,
             return;
     }
 
-    alloc_size = mem->memory_size >> TARGET_PAGE_BITS / sizeof(d.dirty_bitmap);
+    alloc_size = ((mem->memory_size >> TARGET_PAGE_BITS) + 7) / 8;
     d.dirty_bitmap = qemu_mallocz(alloc_size);
 
     d.slot = mem->slot;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]