From 48a5797c0f227204d0723de0ef34b046964c571e Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Mon, 31 Dec 2012 17:30:40 +0000 Subject: sna/gen4: Tweak single-thread SF w/a for solids Allow multiple threads for the rare case of compositing with a solid color. Signed-off-by: Chris Wilson --- src/sna/gen4_render.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/sna/gen4_render.c') diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c index 3486e086..5b137f0f 100644 --- a/src/sna/gen4_render.c +++ b/src/sna/gen4_render.c @@ -1997,7 +1997,6 @@ gen4_render_composite(struct sna *sna, tmp->is_affine = tmp->src.is_affine; tmp->has_component_alpha = false; tmp->need_magic_ca_pass = false; - tmp->u.gen4.sf = 0; if (mask) { if (mask->componentAlpha && PICT_FORMAT_RGB(mask->format)) { @@ -2046,9 +2045,10 @@ gen4_render_composite(struct sna *sna, } gen4_choose_composite_emitter(tmp); - if (tmp->mask.bo == NULL && tmp->src.transform == NULL) - /* XXX using more then one thread causes corruption? */ - tmp->u.gen4.sf = 1; + /* XXX using more then one thread causes corruption? */ + tmp->u.gen4.sf = (tmp->mask.bo == NULL && + tmp->src.transform == NULL && + !tmp->src.is_solid); tmp->u.gen4.wm_kernel = gen4_choose_composite_kernel(tmp->op, -- cgit v1.2.3