Module: Mesa Branch: master Commit: f30aab76961564e2f0ce34af7d7b38ec43535877 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f30aab76961564e2f0ce34af7d7b38ec43535877
Author: Philipp Zabel <[email protected]> Date: Wed Apr 12 16:13:36 2017 +0200 etnaviv: stop repeatedly resolving an unchanged resource into its scanout prime buffer Before resolving a resource into its scanout prime buffer, check that the prime resource is actually older. If it is not, the resolve is an expensive no-op, and we better skip it. Signed-off-by: Philipp Zabel <[email protected]> Reviewed-by: Christian Gmeiner <[email protected]> --- src/gallium/drivers/etnaviv/etnaviv_clear_blit.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/etnaviv/etnaviv_clear_blit.c b/src/gallium/drivers/etnaviv/etnaviv_clear_blit.c index d555884d3f..a089fed13c 100644 --- a/src/gallium/drivers/etnaviv/etnaviv_clear_blit.c +++ b/src/gallium/drivers/etnaviv/etnaviv_clear_blit.c @@ -593,8 +593,11 @@ etna_flush_resource(struct pipe_context *pctx, struct pipe_resource *prsc) { struct etna_resource *rsc = etna_resource(prsc); - if (rsc->scanout) + if (rsc->scanout && + etna_resource_older(etna_resource(rsc->scanout->prime), rsc)) { etna_copy_resource(pctx, rsc->scanout->prime, prsc, 0, 0); + etna_resource(rsc->scanout->prime)->seqno = rsc->seqno; + } } void _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
