[Mesa-dev] [PATCH 05/12] radeonsi: don't flag renderbuffer feedback loop if DCC has just been disabled

Marek Olšák maraeo at gmail.com
Tue Jun 7 10:04:29 UTC 2016


From: Marek Olšák <marek.olsak at amd.com>

---
 src/gallium/drivers/radeonsi/si_descriptors.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c
index 8e212be..a20adec 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -577,7 +577,9 @@ static void si_set_shader_image(struct si_context *ctx,
 			 * The decompression is relatively cheap if the surface
 			 * has been decompressed already.
 			 */
-			if (!r600_texture_disable_dcc(&screen->b, tex))
+			if (r600_texture_disable_dcc(&screen->b, tex))
+				uses_dcc = false;
+			else
 				ctx->b.decompress_dcc(&ctx->b.b, tex);
 		}
 
@@ -587,7 +589,7 @@ static void si_set_shader_image(struct si_context *ctx,
 			images->compressed_colortex_mask &= ~(1 << slot);
 		}
 
-		if (tex->dcc_offset &&
+		if (uses_dcc &&
 		    p_atomic_read(&tex->framebuffers_bound))
 			ctx->need_check_render_feedback = true;
 
-- 
2.7.4



More information about the mesa-dev mailing list