This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] RE: qemu vga issue

On Tue, 2010-11-09 at 17:49 +0000, Stefano Stabellini wrote:
> On Sun, 7 Nov 2010, Kay, Allen M wrote:
> > I'm seeing this in xen-unstable tree.
> > 
> Maybe vga dirty bit tracking is failing.

I got a private mail regarding win7 graphics corruption this morning
which lead to me proposing the following fix for vga dirty tracking. I
didn't actually read this thread but perhaps it helps here too? (I
forgot to CC the list when I replied to that private mail, which I think
highlights the need to avoid private mails to developers)


# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1289323509 0
# Node ID 3076b7dc364bfe0083f8ffcfafd9e14893d866d1
# Parent  2cc6c31e6bc8cfc89a8df1e16453f60496e583da
libxc: correct dirty_bitmap bounce size in xc_hvm_track_dirty_vram

The size should be in bytes not 32-bit words. Fixes graphics
corruption issues for HVM guests due to bouncing too little data.

Also the dirty_bitmap buffer is output only and therefore only needs
bouncing in one direction.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

diff -r 2cc6c31e6bc8 -r 3076b7dc364b tools/libxc/xc_misc.c
--- a/tools/libxc/xc_misc.c     Tue Nov 09 17:25:09 2010 +0000
+++ b/tools/libxc/xc_misc.c     Tue Nov 09 17:25:09 2010 +0000
@@ -423,7 +423,7 @@ int xc_hvm_track_dirty_vram(
     unsigned long *dirty_bitmap)
-    DECLARE_HYPERCALL_BOUNCE(dirty_bitmap, (nr+31) / 32, 
+    DECLARE_HYPERCALL_BOUNCE(dirty_bitmap, (nr+7) / 8, 
     DECLARE_HYPERCALL_BUFFER(struct xen_hvm_track_dirty_vram, arg);
     int rc;

Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>