mirror of https://gitee.com/openkylin/qemu.git
kvm: Fix dirty log temporary buffer size
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 <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
4495d6a745
commit
62518b8b1d
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue