summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-06-05 12:04:29 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2014-06-05 13:58:04 +0100
commit1327918f91dce2051b809594db5a3ed555934612 (patch)
tree7b2f25d2711ec32c593edef9f8443e06efc358db
parent8369166349c92a20d9a2e7d0256e63f66fe2682b (diff)
sna: Mark CPU as all damaged when discarding a busy GPU bo
When we discard a GPU bo, we need to make sure that the remaining content is marked as only accessible via the CPU shadow pointer. Regression from commit 65301412ecf2d55ab55a2d7faeaa048d4ee8b1d0 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Sat May 17 20:59:38 2014 +0100 sna: Discard active GPU buffers before uploading into them Reported-by: Jan Alexander Steffens <jan.steffens@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79517 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-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 f77b4c60..70211eb0 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -4602,6 +4602,10 @@ try_upload_tiled_x(PixmapPtr pixmap, RegionRec *region,
kgem_bo_can_map__cpu(&sna->kgem, priv->gpu_bo, true)));
sna_pixmap_free_gpu(sna, priv);
ignore_cpu = priv->cpu_damage == NULL;
+ if (priv->ptr)
+ sna_damage_all(&priv->cpu_damage,
+ pixmap->drawable.width,
+ pixmap->drawable.height);
}
}