kvm: Fix framebuffer dirty log sync
kvm_physical_sync_dirty_bitmap() takes the end address as second
argument, not the region size. Moverover, the kvm API should not be used
directly here, but cpu_physical_sync_dirty_bitmap().
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
diff --git a/hw/framebuffer.c b/hw/framebuffer.c
index 1086ba9..24cdf25 100644
--- a/hw/framebuffer.c
+++ b/hw/framebuffer.c
@@ -17,7 +17,6 @@
#include "hw.h"
#include "console.h"
#include "framebuffer.h"
-#include "kvm.h"
/* Render an image from a shared memory framebuffer. */
@@ -50,9 +49,7 @@
*first_row = -1;
src_len = src_width * rows;
- if (kvm_enabled()) {
- kvm_physical_sync_dirty_bitmap(base, src_len);
- }
+ cpu_physical_sync_dirty_bitmap(base, base + src_len);
pd = cpu_get_physical_page_desc(base);
pd2 = cpu_get_physical_page_desc(base + src_len - 1);
/* We should reall check that this is a continuous ram region.