xf86-video-intel: src/sna/gen4_render.c src/sna/gen5_render.c src/sna/gen6_render.c src/sna/gen7_render.c

Chris Wilson ickle at kemper.freedesktop.org
Wed Jan 11 19:01:19 PST 2012


 src/sna/gen4_render.c |    6 ++++--
 src/sna/gen5_render.c |    6 ++++--
 src/sna/gen6_render.c |    6 ++++--
 src/sna/gen7_render.c |    6 ++++--
 4 files changed, 16 insertions(+), 8 deletions(-)

New commits:
commit 7290ced5791f9860b00901fa9a4545ab5a067fae
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Thu Jan 12 02:59:43 2012 +0000

    sna/video: Fix for changes in damage api
    
    We can avoid both calls to modify the damage with one simple check.
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c
index 1df5bde..e9fa94b 100644
--- a/src/sna/gen4_render.c
+++ b/src/sna/gen4_render.c
@@ -1687,8 +1687,10 @@ gen4_render_video(struct sna *sna,
 
 		FLUSH();
 
-		sna_damage_add_box(&priv->gpu_damage, &r);
-		sna_damage_subtract_box(&priv->cpu_damage, &r);
+		if (!DAMAGE_IS_ALL(priv->gpu_damage)) {
+			sna_damage_add_box(&priv->gpu_damage, &r);
+			sna_damage_subtract_box(&priv->cpu_damage, &r);
+		}
 		box++;
 	}
 
diff --git a/src/sna/gen5_render.c b/src/sna/gen5_render.c
index 862f03e..6d4cf6e 100644
--- a/src/sna/gen5_render.c
+++ b/src/sna/gen5_render.c
@@ -1729,8 +1729,10 @@ gen5_render_video(struct sna *sna,
 		OUT_VERTEX_F((box->x1 - dxo) * src_scale_x);
 		OUT_VERTEX_F((box->y1 - dyo) * src_scale_y);
 
-		sna_damage_add_box(&priv->gpu_damage, &r);
-		sna_damage_subtract_box(&priv->cpu_damage, &r);
+		if (!DAMAGE_IS_ALL(priv->gpu_damage)) {
+			sna_damage_add_box(&priv->gpu_damage, &r);
+			sna_damage_subtract_box(&priv->cpu_damage, &r);
+		}
 		box++;
 	}
 
diff --git a/src/sna/gen6_render.c b/src/sna/gen6_render.c
index c7d4e7b..b1a0905 100644
--- a/src/sna/gen6_render.c
+++ b/src/sna/gen6_render.c
@@ -1919,8 +1919,10 @@ gen6_render_video(struct sna *sna,
 		OUT_VERTEX_F((box->x1 - dxo) * src_scale_x);
 		OUT_VERTEX_F((box->y1 - dyo) * src_scale_y);
 
-		sna_damage_add_box(&priv->gpu_damage, &r);
-		sna_damage_subtract_box(&priv->cpu_damage, &r);
+		if (!DAMAGE_IS_ALL(priv->gpu_damage)) {
+			sna_damage_add_box(&priv->gpu_damage, &r);
+			sna_damage_subtract_box(&priv->cpu_damage, &r);
+		}
 		box++;
 	}
 
diff --git a/src/sna/gen7_render.c b/src/sna/gen7_render.c
index 302a1dc..2d85a1b 100644
--- a/src/sna/gen7_render.c
+++ b/src/sna/gen7_render.c
@@ -2013,8 +2013,10 @@ gen7_render_video(struct sna *sna,
 		OUT_VERTEX_F((box->x1 - dxo) * src_scale_x);
 		OUT_VERTEX_F((box->y1 - dyo) * src_scale_y);
 
-		sna_damage_add_box(&priv->gpu_damage, &r);
-		sna_damage_subtract_box(&priv->cpu_damage, &r);
+		if (!DAMAGE_IS_ALL(priv->gpu_damage)) {
+			sna_damage_add_box(&priv->gpu_damage, &r);
+			sna_damage_subtract_box(&priv->cpu_damage, &r);
+		}
 		box++;
 	}
 


More information about the xorg-commit mailing list