From 431a17628774fbcaaa0af8c2bbbae8885ce5e7b2 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Fri, 2 Aug 2024 14:11:03 -0400 Subject: [PATCH] hk: fix vkd3d-proton descriptor-performance Signed-off-by: Alyssa Rosenzweig Part-of: --- src/asahi/vulkan/hk_descriptor_set.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/asahi/vulkan/hk_descriptor_set.c b/src/asahi/vulkan/hk_descriptor_set.c index f22945feb5b..eef7a3e42d0 100644 --- a/src/asahi/vulkan/hk_descriptor_set.c +++ b/src/asahi/vulkan/hk_descriptor_set.c @@ -557,7 +557,11 @@ hk_descriptor_set_create(struct hk_device *dev, struct hk_descriptor_pool *pool, (layout->binding[layout->binding_count - 1].flags & VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT)) { uint32_t stride = layout->binding[layout->binding_count - 1].stride; - set->size += stride * variable_count; + + /* Off by one so we don't underallocate the end. Otherwise vkd3d-proton + * descriptor-performance underallocates. + */ + set->size += stride * (variable_count + 1); } set->size = align64(set->size, HK_MIN_UBO_ALIGNMENT);