Module: Mesa
Branch: main
Commit: a38de4c011da73ae64d00565c6b4710ed1b3230e
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a38de4c011da73ae64d00565c6b4710ed1b3230e

Author: Chia-I Wu <[email protected]>
Date:   Tue Feb 28 17:37:57 2023 -0800

radv: disable tc_compatible_cmask on GFX9 in some cases

There seems to be issues when sample count > 2 on GFX9.  More precisely,
CTS has issues when sample count > 2.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21615>

---

 src/amd/ci/radv-raven-fails.txt      |  8 --------
 src/amd/ci/radv-renoir-aco-fails.txt | 33 ---------------------------------
 src/amd/ci/radv-vega10-aco-fails.txt | 33 ---------------------------------
 src/amd/vulkan/radv_image.c          |  5 +++++
 4 files changed, 5 insertions(+), 74 deletions(-)

diff --git a/src/amd/ci/radv-raven-fails.txt b/src/amd/ci/radv-raven-fails.txt
index 49ae73ed2b3..17cd46a051b 100644
--- a/src/amd/ci/radv-raven-fails.txt
+++ b/src/amd/ci/radv-raven-fails.txt
@@ -1,11 +1,3 @@
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
 
dEQP-VK.binding_model.descriptor_buffer.multiple.compute_comp_buffers16_sets1,Crash
 
dEQP-VK.binding_model.descriptor_buffer.multiple.compute_comp_buffers1_sets3_imm_samplers,Crash
 
dEQP-VK.binding_model.descriptor_buffer.multiple.compute_comp_buffers2_sets4_imm_samplers,Crash
diff --git a/src/amd/ci/radv-renoir-aco-fails.txt 
b/src/amd/ci/radv-renoir-aco-fails.txt
index ed8a4fff33a..447e1e2c7ad 100644
--- a/src/amd/ci/radv-renoir-aco-fails.txt
+++ b/src/amd/ci/radv-renoir-aco-fails.txt
@@ -1,36 +1,3 @@
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-
-# New fails in CTS 1.3.3.0
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-
 # Test bugs with GPL (all of them should be fixed with recent CTS).
 
dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.vertex_stage_fragment_stage,Crash
 
dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.vertex_stage_fragment_stage_delayed_destroy,Crash
diff --git a/src/amd/ci/radv-vega10-aco-fails.txt 
b/src/amd/ci/radv-vega10-aco-fails.txt
index 7933f83c39f..38ab1996376 100644
--- a/src/amd/ci/radv-vega10-aco-fails.txt
+++ b/src/amd/ci/radv-vega10-aco-fails.txt
@@ -1,36 +1,3 @@
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.whole_copy_before_resolving_compute.4_bit,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.whole_copy_before_resolving_compute.8_bit,Fail
-
-# New fails in CTS 1.3.3.0
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.copy_commands2.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.core.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.4_bit_transfer_src_optimal_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_general_general_bind_offset,Fail
-dEQP-VK.api.copy_and_blit.dedicated_allocation.resolve_image.diff_layout_copy_before_resolving.8_bit_transfer_src_optimal_general_bind_offset,Fail
-
 # Test bugs with GPL (all of them should be fixed with recent CTS).
 
dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.vertex_stage_fragment_stage,Crash
 
dEQP-VK.pipeline.pipeline_library.creation_feedback.graphics_tests.vertex_stage_fragment_stage_delayed_destroy,Crash
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c
index 7a6bcbe297e..cf3df948ecb 100644
--- a/src/amd/vulkan/radv_image.c
+++ b/src/amd/vulkan/radv_image.c
@@ -383,6 +383,11 @@ radv_use_tc_compat_cmask_for_image(struct radv_device 
*device, struct radv_image
    if (device->physical_device->rad_info.gfx_level < GFX8)
       return false;
 
+   /* GFX9 has issues when sample count is greater than 2 */
+   if (device->physical_device->rad_info.gfx_level == GFX9 &&
+       image->info.samples > 2)
+      return false;
+
    if (device->instance->debug_flags & RADV_DEBUG_NO_TC_COMPAT_CMASK)
       return false;
 

Reply via email to