radv/meta: fix the key for DCC decompress on compute

This could return the graphics DCC pipeline if it was created before,
and crash or potentially hang the GPU.

Found this while working on in-progress VKCTS coverage.

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
(cherry picked from commit ad7151f4bf)

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39828>
This commit is contained in:
Samuel Pitoiset 2026-02-04 14:15:46 +01:00 committed by Marge Bot
parent aba5409384
commit 5773c7bda6
3 changed files with 3 additions and 2 deletions

View file

@ -1674,7 +1674,7 @@
"description": "radv/meta: fix the key for DCC decompress on compute",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -97,6 +97,7 @@ enum radv_meta_object_key_type {
RADV_META_OBJECT_KEY_CLEAR_HIZ,
RADV_META_OBJECT_KEY_FAST_CLEAR_ELIMINATE,
RADV_META_OBJECT_KEY_DCC_DECOMPRESS,
RADV_META_OBJECT_KEY_DCC_DECOMPRESS_CS,
RADV_META_OBJECT_KEY_DCC_RETILE,
RADV_META_OBJECT_KEY_HTILE_EXPAND_GFX,
RADV_META_OBJECT_KEY_HTILE_EXPAND_CS,

View file

@ -19,7 +19,7 @@ enum radv_color_op {
static VkResult
get_dcc_decompress_compute_pipeline(struct radv_device *device, VkPipeline *pipeline_out, VkPipelineLayout *layout_out)
{
enum radv_meta_object_key_type key = RADV_META_OBJECT_KEY_DCC_DECOMPRESS;
enum radv_meta_object_key_type key = RADV_META_OBJECT_KEY_DCC_DECOMPRESS_CS;
VkResult result;
const VkDescriptorSetLayoutBinding bindings[] = {