From b72699702972eca61171e205c19df0807ccb59fc Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Mon, 8 Nov 2021 08:50:14 +0100 Subject: [PATCH] radv: do not expose buffer features for depth/stencil formats The Vulkan spec got clarified recently and it's invalid (hw can support it though). Fixes new CTS dEQP-VK.api.buffer.invalid_buffer_features.*. Cc: 21.3 mesa-stable Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen Part-of: (cherry picked from commit ca7c748f45a9336fd22ca2c88b61ee4142821235) --- .pick_status.json | 2 +- src/amd/vulkan/radv_formats.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 937670e3fe5..19e1589692a 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -382,7 +382,7 @@ "description": "radv: do not expose buffer features for depth/stencil formats", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/amd/vulkan/radv_formats.c b/src/amd/vulkan/radv_formats.c index 8d355d3a28d..6b5692d7690 100644 --- a/src/amd/vulkan/radv_formats.c +++ b/src/amd/vulkan/radv_formats.c @@ -868,6 +868,11 @@ radv_physical_device_get_format_properties(struct radv_physical_device *physical tiled |= VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; } + /* It's invalid to expose buffer features with depth/stencil formats. */ + if (vk_format_is_depth_or_stencil(format)) { + buffer = 0; + } + out_properties->linearTilingFeatures = linear; out_properties->optimalTilingFeatures = tiled; out_properties->bufferFeatures = buffer;