summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDawn Han <dawnhan@google.com>2022-11-29 23:31:34 +0000
committerEric Engestrom <eric@engestrom.ch>2022-12-14 20:47:01 +0000
commit0aecc2089005e842c3e01328224715a406a5b15d (patch)
tree17baa3a7dfe11c5461a84c1d279093bac0f75702
parent7fa84a47dfcb0a582efa7ab15d4f2cd867f3306e (diff)
downloadmesa-0aecc2089005e842c3e01328224715a406a5b15d.tar.gz
venus: fix deqp tests failed on iub descriptor type
Fixes: abae9d4831b ("Add the iub binding count tracking") Signed-off-by: Dawn Han <dawnhan@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20064> (cherry picked from commit fbf4c6e43ff810625ff916d40c6b00429adaaf14)
-rw-r--r--.pick_status.json2
-rw-r--r--src/virtio/vulkan/vn_descriptor_set.c6
2 files changed, 6 insertions, 2 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 6a9c8792e60..881bd689a50 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -3217,7 +3217,7 @@
"description": "venus: fix deqp tests failed on iub descriptor type",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "abae9d4831b5e983385d988ef95874e449887cc1"
},
diff --git a/src/virtio/vulkan/vn_descriptor_set.c b/src/virtio/vulkan/vn_descriptor_set.c
index 134c1d42657..82f3fbfe4fb 100644
--- a/src/virtio/vulkan/vn_descriptor_set.c
+++ b/src/virtio/vulkan/vn_descriptor_set.c
@@ -502,8 +502,12 @@ vn_descriptor_pool_alloc_descriptors(
* pool to exceed the value of
* VkDescriptorPoolInlineUniformBlockCreateInfo::maxInlineUniformBlockBindings
* used to create the descriptor pool.
+ *
+ * If descriptorCount is zero this binding entry is reserved and the
+ * resource must not be accessed from any stage via this binding within
+ * any pipeline using the set layout.
*/
- if (type == VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK) {
+ if (type == VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK && count != 0) {
if (++pool->used.iub_binding_count > pool->max.iub_binding_count)
goto fail;
}