sna: Prefer to render over damage into the GPU bo
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 23 Jun 2014 08:22:13 +0000 (09:22 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 23 Jun 2014 08:43:10 +0000 (09:43 +0100)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/sna/sna_accel.c

index 067f7dd..e4520d1 100644 (file)
@@ -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;
 }