From 14ce38143d1e564ad4020704bbbbd6da3f2a61dc Mon Sep 17 00:00:00 2001 From: Yiwei Zhang Date: Sat, 30 Aug 2025 23:27:11 -0700 Subject: [PATCH] v3dv: use stack image for v3dv_GetDeviceImageSubresourceLayout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This follows the same with v3dv_GetDeviceImageMemoryRequirements. Reviewed-by: Alejandro PiƱeiro Part-of: --- src/broadcom/vulkan/v3dv_image.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/broadcom/vulkan/v3dv_image.c b/src/broadcom/vulkan/v3dv_image.c index 26dc311b6a3..5e14a89fc6b 100644 --- a/src/broadcom/vulkan/v3dv_image.c +++ b/src/broadcom/vulkan/v3dv_image.c @@ -640,15 +640,14 @@ v3dv_GetDeviceImageSubresourceLayoutKHR(VkDevice vk_device, memset(&pLayout->subresourceLayout, 0, sizeof(pLayout->subresourceLayout)); - VkImage vk_image = VK_NULL_HANDLE; - VkResult result = create_image(device, pInfo->pCreateInfo, NULL, &vk_image); - if (result != VK_SUCCESS) - return; + struct v3dv_image image = { 0 }; + vk_image_init(&device->vk, &image.vk, pInfo->pCreateInfo); - struct v3dv_image *image = v3dv_image_from_handle(vk_image); - get_image_subresource_layout(device, image, pInfo->pSubresource, pLayout); + ASSERTED VkResult result = + v3dv_image_init(device, pInfo->pCreateInfo, NULL, &image); + assert(result == VK_SUCCESS); - v3dv_DestroyImage(vk_device, vk_image, NULL); + get_image_subresource_layout(device, &image, pInfo->pSubresource, pLayout); } VKAPI_ATTR void VKAPI_CALL