summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-01-12 02:59:43 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-01-12 02:59:43 +0000
commit7290ced5791f9860b00901fa9a4545ab5a067fae (patch)
tree5348675cc448d98db569c4dc4e388c836bda659d
parent87e6dcb3b06c274ecba5de56d4e86fec73e46dbb (diff)
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@chris-wilson.co.uk>
-rw-r--r--src/sna/gen4_render.c6
-rw-r--r--src/sna/gen5_render.c6
-rw-r--r--src/sna/gen6_render.c6
-rw-r--r--src/sna/gen7_render.c6
4 files changed, 16 insertions, 8 deletions
diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c
index 1df5bde5..e9fa94bb 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 862f03e9..6d4cf6ef 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 c7d4e7b3..b1a0905f 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 302a1dcf..2d85a1b2 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++;
}