From e309f1ad4544ff465206d6284167d3e56098281c Mon Sep 17 00:00:00 2001 From: Yiwei Zhang Date: Wed, 23 Jul 2025 00:51:48 -0700 Subject: [PATCH] lavapipe: fix maint4 vkGetDeviceBufferMemoryRequirements Otherwise dedicated alloc req is missed. Fixes: 987e8a5a0c0 ("lavapipe: implement vkGetDevice*MemoryRequirements") Reviewed-by: Lucas Fryzek Part-of: --- src/gallium/frontends/lavapipe/lvp_device.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/gallium/frontends/lavapipe/lvp_device.c b/src/gallium/frontends/lavapipe/lvp_device.c index 7d8435d47d1..8a41fdd7e67 100644 --- a/src/gallium/frontends/lavapipe/lvp_device.c +++ b/src/gallium/frontends/lavapipe/lvp_device.c @@ -2166,8 +2166,13 @@ VKAPI_ATTR void VKAPI_CALL lvp_GetDeviceBufferMemoryRequirements( VkBuffer _buffer; if (lvp_CreateBuffer(_device, pInfo->pCreateInfo, NULL, &_buffer) != VK_SUCCESS) return; - LVP_FROM_HANDLE(lvp_buffer, buffer, _buffer); - pMemoryRequirements->memoryRequirements.size = buffer->total_size; + + assert(pInfo->pNext == NULL); + const VkBufferMemoryRequirementsInfo2 info = { + .sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2, + .buffer = _buffer, + }; + lvp_GetBufferMemoryRequirements2(_device, &info, pMemoryRequirements); lvp_DestroyBuffer(_device, _buffer, NULL); }