diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-11-10 10:30:04 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-11-10 10:30:04 +0000 |
commit | f5d79b202dd448e61ab6ffce26fe9cbf9051d770 (patch) | |
tree | 9d594137c16a88b566e891157097efca3bda4194 /src/sna/gen2_render.c | |
parent | 27327633138dce159ca2e91fe5eac1565bd45e1c (diff) |
sna/gen2: Add a modicum of fallback DBG
References: https://bugs.freedesktop.org/show_bug.cgi?id=56785
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/gen2_render.c')
-rw-r--r-- | src/sna/gen2_render.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/sna/gen2_render.c b/src/sna/gen2_render.c index 024b1076..6e51c18a 100644 --- a/src/sna/gen2_render.c +++ b/src/sna/gen2_render.c @@ -1816,6 +1816,8 @@ gen2_render_composite(struct sna *sna, dst_x, dst_y, dst->polyMode == PolyModePrecise)) { case -1: + DBG(("%s: fallback -- unable to prepare source\n", + __FUNCTION__)); goto cleanup_dst; case 0: gen2_composite_solid_init(sna, &tmp->src, 0); @@ -1839,6 +1841,8 @@ gen2_render_composite(struct sna *sna, dst_x, dst_y, dst->polyMode == PolyModePrecise)) { case -1: + DBG(("%s: fallback -- unable to prepare mask\n", + __FUNCTION__)); goto cleanup_src; case 0: gen2_composite_solid_init(sna, &tmp->mask, 0); @@ -1855,8 +1859,12 @@ gen2_render_composite(struct sna *sna, tmp->has_component_alpha = true; if (gen2_blend_op[op].src_alpha && (gen2_blend_op[op].src_blend != BLENDFACTOR_ZERO)) { - if (op != PictOpOver) - return false; + if (op != PictOpOver) { + DBG(("%s: fallback -- unsupported CA blend (src_blend=%d)\n", + __FUNCTION__, + gen2_blend_op[op].src_blend)); + goto cleanup_dst; + } tmp->need_magic_ca_pass = true; tmp->op = PictOpOutReverse; @@ -1903,8 +1911,11 @@ gen2_render_composite(struct sna *sna, kgem_submit(&sna->kgem); if (!kgem_check_bo(&sna->kgem, tmp->dst.bo, tmp->src.bo, tmp->mask.bo, - NULL)) + NULL)) { + DBG(("%s: fallback, operation does not fit into GTT\n", + __FUNCTION__)); goto cleanup_mask; + } } gen2_emit_composite_state(sna, tmp); |