From: Nicolai Hähnle Date: Fri, 1 Jul 2016 09:37:59 +0000 (+0200) Subject: radeonsi: correctly mark levels of 3D textures as fully decompressed X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=065eeb79f706d10340044447cc5821e64063ea9e;p=mesa.git radeonsi: correctly mark levels of 3D textures as fully decompressed Account for the fact that max_layer is minified for higher levels. Reviewed-by: Marek Olšák --- diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index a48c5bc19e1..114878738ba 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -214,7 +214,7 @@ si_blit_decompress_zs_planes_in_place(struct si_context *sctx, /* The texture will always be dirty if some layers aren't flushed. * I don't think this case occurs often though. */ - if (first_layer == 0 && last_layer == max_layer) { + if (first_layer == 0 && last_layer >= max_layer) { fully_decompressed_mask |= 1u << level; } } @@ -361,7 +361,7 @@ static void si_blit_decompress_color(struct pipe_context *ctx, /* The texture will always be dirty if some layers aren't flushed. * I don't think this case occurs often though. */ - if (first_layer == 0 && last_layer == max_layer) { + if (first_layer == 0 && last_layer >= max_layer) { rtex->dirty_level_mask &= ~(1 << level); } }