summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-06-23 09:22:13 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2014-06-23 09:43:10 +0100
commitbb4c057620fb0558a77a9b7db538786ffda7cf13 (patch)
tree92d8c72d70fa261b8e9ca00d4f08a5172068f418 /src
parent416c223861aaeb61c6408e6537315b78e908df43 (diff)
sna: Prefer to render over damage into the GPU bo
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src')
-rw-r--r--src/sna/sna_accel.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 067f7dd2..e4520d14 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -3809,6 +3809,9 @@ cpu_fail:
assert(priv->gpu_bo == NULL || priv->gpu_bo->proxy == NULL);
if (flags & RENDER_GPU) {
+ if ((flags & IGNORE_DAMAGE) == 0 && priv->gpu_damage)
+ goto move_to_gpu;
+
if (priv->gpu_bo && priv->gpu_bo->tiling)
goto move_to_gpu;
@@ -3865,6 +3868,7 @@ cpu_fail:
__FUNCTION__, *damage != NULL));
assert(damage == NULL || !DAMAGE_IS_ALL(*damage));
assert(priv->clear == false);
+ priv->cpu = false;
return priv->cpu_bo;
}