From 80d6e9699088d96d85deb23a54056f6d0bb3e30f 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 ac16d7258fe..b5a30189236 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -7954,7 +7954,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 0f4e4679763..d896e7f91b2 100644 --- a/src/intel/vulkan/anv_cmd_buffer.c +++ b/src/intel/vulkan/anv_cmd_buffer.c @@ -988,9 +988,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 @@ -1058,6 +1055,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(