xf86-video-intel: 2 commits - src/intel_uxa.c uxa/uxa-render.c

Chris Wilson ickle at kemper.freedesktop.org
Tue Dec 7 09:05:58 PST 2010


 src/intel_uxa.c  |    3 ++-
 uxa/uxa-render.c |   10 +++++-----
 2 files changed, 7 insertions(+), 6 deletions(-)

New commits:
commit 4a186a612376bdd6f86c026e8b8b442108868a0a
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Tue Dec 7 16:56:57 2010 +0000

    Always flush the batch before blocking for new X requests
    
    This should prevent any lag when waiting upon user input, for example
    whilst logging in with gdm.
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/intel_uxa.c b/src/intel_uxa.c
index 3b3a207..a2a58fb 100644
--- a/src/intel_uxa.c
+++ b/src/intel_uxa.c
@@ -942,7 +942,8 @@ void intel_uxa_block_handler(intel_screen_private *intel)
 		intel_batch_submit(intel->scrn, TRUE);
 
 		DamageEmpty(intel->shadow_damage);
-	}
+	} else
+		intel_batch_submit(intel->scrn, TRUE);
 }
 
 static PixmapPtr
commit 1ba983034b3a70fb541dc359189c020ee497c634
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Tue Dec 7 12:27:29 2010 +0000

    uxa: Emit the damage after the render for the workaround in uxa_solid_rects
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/uxa/uxa-render.c b/uxa/uxa-render.c
index a6b539d..cf8b8ea 100644
--- a/uxa/uxa-render.c
+++ b/uxa/uxa-render.c
@@ -998,11 +998,6 @@ uxa_solid_rects (CARD8		op,
 		return;
 	}
 
-	/* XXX xserver-1.8: CompositeRects is not tracked by Damage, so we must
-	 * manually append the damaged regions ourselves.
-	 */
-	DamageRegionAppend(dst->pDrawable, &region);
-
 	pixman_region_translate(&region, dst_x, dst_y);
 	boxes = pixman_region_rectangles(&region, &num_boxes);
 	extents = pixman_region_extents (&region);
@@ -1092,6 +1087,11 @@ try_solid:
 		FreePicture(src, 0);
 	}
 
+	/* XXX xserver-1.8: CompositeRects is not tracked by Damage, so we must
+	 * manually append the damaged regions ourselves.
+	 */
+	DamageRegionAppend(dst->pDrawable, &region);
+
 	pixman_region_fini(&region);
 	return;
 


More information about the xorg-commit mailing list