Module: Mesa
Branch: staging/23.3
Commit: d282666f96abf36f81443ed170799f8890b96c63
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d282666f96abf36f81443ed170799f8890b96c63

Author: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Date:   Mon Oct 30 17:57:32 2023 +0200

anv: fix corner case of mutable descriptor pool creation

Signed-off-by: Lionel Landwerlin <lionel.g.landwer...@intel.com>
Fixes: 63e91148b7 ("anv: Enable VK_VALVE_mutable_descriptor_type")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10065
Reviewed-by: Yiwei Zhang <zzyi...@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25958>
(cherry picked from commit cdca0b2ce4d603d4f5914d7a1e37923a6a959541)

---

 .pick_status.json                     | 2 +-
 src/intel/vulkan/anv_descriptor_set.c | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index 025a230228a..5d1da6d1c4b 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -304,7 +304,7 @@
         "description": "anv: fix corner case of mutable descriptor pool 
creation",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "main_sha": null,
         "because_sha": "63e91148b7fe777b6ad7bfdb6b02d167c151dd55",
         "notes": null
diff --git a/src/intel/vulkan/anv_descriptor_set.c 
b/src/intel/vulkan/anv_descriptor_set.c
index 0d335b806f3..123894dfa43 100644
--- a/src/intel/vulkan/anv_descriptor_set.c
+++ b/src/intel/vulkan/anv_descriptor_set.c
@@ -280,7 +280,9 @@ anv_descriptor_size_for_mutable_type(const struct 
anv_physical_device *device,
 {
    unsigned size = 0;
 
-   if (!mutable_info || mutable_info->mutableDescriptorTypeListCount == 0) {
+   if (!mutable_info ||
+       mutable_info->mutableDescriptorTypeListCount == 0 ||
+       binding >= mutable_info->mutableDescriptorTypeListCount) {
       for(VkDescriptorType i = 0; i <= VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT; 
i++) {
 
          if (i == VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC ||

Reply via email to