From: Samuel Pitoiset Date: Wed, 14 Jul 2021 18:05:54 +0000 (+0200) Subject: radv: only init the TC-compat ZRANGE metadata for the depth aspect X-Git-Tag: upstream/22.3.5~20194 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1ea156f44c7ce8d6880217ef4d46692cc7ac0219;p=platform%2Fupstream%2Fmesa.git radv: only init the TC-compat ZRANGE metadata for the depth aspect With separate depth/stencil layouts, if the depth aspect is first initialized and then cleared, the ZRANGE_PRECISION metadata might be different than 0. Initializing it again for the stencil aspect will overwrite the value. Fixes rendering glitches with Scarlet Nexus on GFX8-9. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5052 Cc: 21.1 21.2 mesa-stable Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen Part-of: --- diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index 84ce613..56308a4 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -6621,7 +6621,7 @@ radv_initialize_htile(struct radv_cmd_buffer *cmd_buffer, struct radv_image *ima radv_set_ds_clear_metadata(cmd_buffer, image, range, value, aspects); - if (radv_image_is_tc_compat_htile(image)) { + if (radv_image_is_tc_compat_htile(image) && (range->aspectMask & VK_IMAGE_ASPECT_DEPTH_BIT)) { /* Initialize the TC-compat metada value to 0 because by * default DB_Z_INFO.RANGE_PRECISION is set to 1, and we only * need have to conditionally update its value when performing