Mesa (staging/19.3): turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Jan 21 20:16:13 UTC 2020
Module: Mesa
Branch: staging/19.3
Commit: bd66e8c2a43687bed137d8c02d928db941c09c1f
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd66e8c2a43687bed137d8c02d928db941c09c1f
Author: Hyunjun Ko <zzoon at igalia.com>
Date: Fri Jan 17 07:23:03 2020 +0000
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 <jonathan at marek.ca>
(cherry picked from commit 26d93a7495511ded7cca3ed46bcdf7e134c0f929)
---
.pick_status.json | 2 +-
src/freedreno/vulkan/tu_descriptor_set.c | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/.pick_status.json b/.pick_status.json
index cc0d052f052..66bc86a9185 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -139,7 +139,7 @@
"description": "turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": "c39afe68f0390d45130c1317b3b7e65f55542c36"
},
diff --git a/src/freedreno/vulkan/tu_descriptor_set.c b/src/freedreno/vulkan/tu_descriptor_set.c
index 4965274aac6..7bf278ad32c 100644
--- a/src/freedreno/vulkan/tu_descriptor_set.c
+++ b/src/freedreno/vulkan/tu_descriptor_set.c
@@ -157,6 +157,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));
More information about the mesa-commit
mailing list