radv: do not allow 1D block-compressed images with (extended) storage on GFX6

For some reasons this seems broken only on GFX6. Note that PAL doesn't
allowed block-compressed with 1D on all GPUs.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22540>
(cherry picked from commit 8a2fab66de)
This commit is contained in:
Samuel Pitoiset 2023-04-17 18:03:38 +02:00 committed by Eric Engestrom
parent b920bab497
commit 6ae14d1808
3 changed files with 12 additions and 113 deletions

View file

@ -157,7 +157,7 @@
"description": "radv: do not allow 1D block-compressed images with (extended) storage on GFX6",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null
},

View file

@ -20,116 +20,4 @@ dEQP-VK.texture.mipmap.cubemap.image_view_min_lod.base_level.nearest_nearest,Fai
# New CTS failures in 1.3.5.0.
dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.contents_2_secondary_cmdbuffers,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_srgb_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgb_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_srgb_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc1_rgba_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc2_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc2_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc2_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc2_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc3_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc3_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc3_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc3_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_snorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc4_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc5_snorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc5_snorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc5_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc5_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc6h_sfloat_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc6h_sfloat_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc6h_ufloat_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc6h_ufloat_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc7_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc7_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc7_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.basic.1d_image.image_store.bc7_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_srgb_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgb_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_srgb_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc1_rgba_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc2_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc2_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc2_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc2_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc3_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc3_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc3_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc3_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_snorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r16g16b16a16_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r16g16b16a16_snorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r16g16b16a16_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r16g16b16a16_unorm,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r32g32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc4_unorm_block.r32g32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc5_snorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc5_snorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc5_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc5_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc6h_sfloat_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc6h_sfloat_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc6h_ufloat_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc6h_ufloat_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc7_srgb_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc7_srgb_block.r32g32b32a32_uint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc7_unorm_block.r32g32b32a32_sint,Fail
dEQP-VK.image.texel_view_compatible.compute.extended.1d_image.image_store.bc7_unorm_block.r32g32b32a32_uint,Fail
dEQP-VK.pipeline.fast_linked_library.multisample_interpolation.sample_interpolation_consistency.component_1.128_128_1.samples_8,Fail

View file

@ -1555,6 +1555,17 @@ radv_get_image_format_properties(struct radv_physical_device *physical_device,
goto unsupported;
}
/* For some reasons, we can't create 1d block-compressed images that can be stored to with a
* different format on GFX6.
*/
if (physical_device->rad_info.gfx_level == GFX6 && info->type == VK_IMAGE_TYPE_1D &&
vk_format_is_block_compressed(format) &&
(info->flags & VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT) &&
((info->flags & VK_IMAGE_CREATE_EXTENDED_USAGE_BIT) ||
(info->usage & VK_IMAGE_USAGE_STORAGE_BIT))) {
goto unsupported;
}
/* From the Vulkan 1.3.206 spec:
*
* "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT specifies that the image can be created with usage flags