From 26d93a7495511ded7cca3ed46bcdf7e134c0f929 Mon Sep 17 00:00:00 2001 From: Hyunjun Ko Date: Fri, 17 Jan 2020 07:23:03 +0000 Subject: [PATCH] turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY When VK_DESCRIPTOR_TYPE_SAMPLER is provided, it doesn't need to be counted as a buffer count. Otherwise it leads to mismatch of allocated buffer size, hitting VK_ERROR_OUT_OF_POOL_MEMORY finally. Fixes: c39afe68f0390d45130c1317b3b7e65f55542c36 Also fixes amber tests: ./tests/cases/address_modes_float.amber ./tests/cases/address_modes_int.amber ./tests/cases/magfilter_linear.amber ./tests/cases/magfilter_nearest.amber Reviewed-by: Jonathan Marek --- src/freedreno/vulkan/tu_descriptor_set.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/freedreno/vulkan/tu_descriptor_set.c b/src/freedreno/vulkan/tu_descriptor_set.c index 55f8f5b8552..556373689ed 100644 --- a/src/freedreno/vulkan/tu_descriptor_set.c +++ b/src/freedreno/vulkan/tu_descriptor_set.c @@ -172,6 +172,9 @@ tu_CreateDescriptorSetLayout( unsigned binding_buffer_count = 1; switch (binding->descriptorType) { + case VK_DESCRIPTOR_TYPE_SAMPLER: + binding_buffer_count = 0; + break; case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC: case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC: assert(!(pCreateInfo->flags & VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR)); -- 2.30.2