From 0c53160139c7fe519f8ed134c02371d3faa85d1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Iv=C3=A1n=20Briano?= Date: Wed, 13 Aug 2025 16:39:34 -0700 Subject: [PATCH] anv: dirty descriptor state on CmdSetDescriptorBufferOffets Calling vkCmdBindDescriptorBuffersEXT() does not invalidate previously set descriptor sets. Move the state dirtying to vkCmdSetDescriptorBufferOffets. Fixes: ab7641b8dcb ("anv: implement descriptor buffer binding") Reviewed-by: Lionel Landwerlin Part-of: (cherry picked from commit 35190aac91878b997404d0261a4ccfa6d7198fc1) --- .pick_status.json | 2 +- src/intel/vulkan/anv_cmd_buffer.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 570e6567e87..6d132eec289 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2814,7 +2814,7 @@ "description": "anv: dirty descriptor state on CmdSetDescriptorBufferOffets", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "ab7641b8dcbfee419b761abb27fe6fed476b4e05", "notes": null diff --git a/src/intel/vulkan/anv_cmd_buffer.c b/src/intel/vulkan/anv_cmd_buffer.c index 78465b4c2d9..6fba1055e49 100644 --- a/src/intel/vulkan/anv_cmd_buffer.c +++ b/src/intel/vulkan/anv_cmd_buffer.c @@ -992,9 +992,6 @@ void anv_CmdBindDescriptorBuffersEXT( state->descriptor_buffers.offsets_dirty = ~0; } } - - anv_cmd_buffer_maybe_dirty_descriptor_mode(cmd_buffer, - ANV_CMD_DESCRIPTOR_BUFFER_MODE_BUFFER); } static void @@ -1062,6 +1059,9 @@ void anv_CmdSetDescriptorBufferOffsets2EXT( pSetDescriptorBufferOffsetsInfo->pOffsets, pSetDescriptorBufferOffsetsInfo->pBufferIndices); } + + anv_cmd_buffer_maybe_dirty_descriptor_mode(cmd_buffer, + ANV_CMD_DESCRIPTOR_BUFFER_MODE_BUFFER); } void anv_CmdBindDescriptorBufferEmbeddedSamplers2EXT(