From 56126d00503fd9bc6fe30781ecddb2fb67de817b Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Mon, 5 May 2014 18:17:01 +0100 Subject: [PATCH] sna: Refine hints to allow inplace writes whilst compositing aligned traps Signed-off-by: Chris Wilson --- src/sna/sna_trapezoids_boxes.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/sna/sna_trapezoids_boxes.c b/src/sna/sna_trapezoids_boxes.c index 898efb5e..335b2ceb 100644 --- a/src/sna/sna_trapezoids_boxes.c +++ b/src/sna/sna_trapezoids_boxes.c @@ -209,8 +209,11 @@ composite_aligned_boxes(struct sna *sna, __FUNCTION__)); flags = MOVE_READ | MOVE_WRITE; - if (n == 1 && op <= PictOpSrc) - flags = MOVE_WRITE | MOVE_INPLACE_HINT; + if (op <= PictOpSrc) { + flags |= MOVE_INPLACE_HINT; + if (n == 1) + flags &= ~MOVE_READ; + } if (!sna_drawable_move_region_to_cpu(dst->pDrawable, &clip, flags)) goto done;