summaryrefslogtreecommitdiff
path: root/src/sna/sna_accel.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2013-01-15 20:37:11 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2013-01-15 23:02:18 +0000
commitaf85ffdec7047efa452d6bab3a0ee3889dd4f046 (patch)
tree91c9cfe2f37c81930c5af5d353ebedc7826523cc /src/sna/sna_accel.c
parentd70be85dc723168a481c1955444afd951c4817bf (diff)
sna: Avoid serialising on an move-to-cpu for an async operation
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/sna_accel.c')
-rw-r--r--src/sna/sna_accel.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index 0b46218b..a1689253 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -1615,6 +1615,8 @@ skip_inplace_map:
}
if (priv->gpu_damage &&
+ ((flags & MOVE_ASYNC_HINT) == 0 ||
+ !__kgem_bo_is_busy(&sna->kgem, priv->gpu_bo)) &&
priv->gpu_bo->tiling == I915_TILING_NONE &&
sna_pixmap_move_to_gpu(pixmap, MOVE_READ)) {
kgem_bo_submit(&sna->kgem, priv->gpu_bo);