summaryrefslogtreecommitdiff
path: root/xen-all.c
diff options
context:
space:
mode:
authorAnthony PERARD <anthony.perard@citrix.com>2012-10-03 13:49:40 +0000
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>2012-10-03 13:49:40 +0000
commit8aba7dc02d5660df7e7d8651304b3079908358be (patch)
tree74a617690a91a289a73969ddd0935e4c90cb91e1 /xen-all.c
parente226939de5814527a21396903b08c3d0ed989558 (diff)
downloadqemu-8aba7dc02d5660df7e7d8651304b3079908358be.tar.gz
qemu-8aba7dc02d5660df7e7d8651304b3079908358be.tar.bz2
qemu-8aba7dc02d5660df7e7d8651304b3079908358be.zip
xen: Set the vram dirty when an error occur.
If the call to xc_hvm_track_dirty_vram() fails, then we set dirtybit on all the video ram. This case happens during migration. Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Diffstat (limited to 'xen-all.c')
-rw-r--r--xen-all.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xen-all.c b/xen-all.c
index b11542c3e7..e6308be23a 100644
--- a/xen-all.c
+++ b/xen-all.c
@@ -507,7 +507,8 @@ static void xen_sync_dirty_bitmap(XenIOState *state,
bitmap);
if (rc < 0) {
if (rc != -ENODATA) {
- fprintf(stderr, "xen: track_dirty_vram failed (0x" TARGET_FMT_plx
+ memory_region_set_dirty(framebuffer, 0, size);
+ DPRINTF("xen: track_dirty_vram failed (0x" TARGET_FMT_plx
", 0x" TARGET_FMT_plx "): %s\n",
start_addr, start_addr + size, strerror(-rc));
}