From 62629d3e3ca53c143d300bde795c447fa5247b7d Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Thu, 26 Jun 2025 12:27:25 +0200 Subject: [PATCH] radv: use 32-bit memory types for descriptor heap buffers Descriptors must be allocated in the 32-bit addr space. Signed-off-by: Samuel Pitoiset Part-of: --- src/amd/vulkan/radv_buffer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/amd/vulkan/radv_buffer.c b/src/amd/vulkan/radv_buffer.c index 81ffe1f590c..2cbb732db39 100644 --- a/src/amd/vulkan/radv_buffer.c +++ b/src/amd/vulkan/radv_buffer.c @@ -183,8 +183,9 @@ radv_get_buffer_memory_requirements(struct radv_device *device, VkDeviceSize siz /* Force 32-bit address-space for descriptor buffers usage because they are passed to shaders * through 32-bit pointers. */ - if (usage & (VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT | - VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT | VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT)) + if (usage & + (VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT | VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT | + VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT | VK_BUFFER_USAGE_2_DESCRIPTOR_HEAP_BIT_EXT)) pMemoryRequirements->memoryRequirements.memoryTypeBits = pdev->memory_types_32bit; if (flags & VK_BUFFER_CREATE_SPARSE_BINDING_BIT) {