From cdef6cfa8cb6338070f48a884af617ac8be6daba Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Mon, 16 Sep 2024 17:14:16 +0200 Subject: [PATCH] panvk: error-check get_fb_descs calls These calls were missing error-handling, but all the pieces to do so are already in place. Let's report the errors as appropriate. Fixes: 5544d39f442 ("panvk: Add a CSF backend for panvk_queue/cmd_buffer") Reviewed-by: Boris Brezillon Part-of: --- src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c b/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c index 3012bdd7eb6..1ebc24a1195 100644 --- a/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c +++ b/src/panfrost/vulkan/csf/panvk_vX_cmd_draw.c @@ -1168,7 +1168,9 @@ panvk_cmd_draw(struct panvk_cmd_buffer *cmdbuf, struct panvk_draw_info *draw) if (result != VK_SUCCESS) return; - get_fb_descs(cmdbuf); + result = get_fb_descs(cmdbuf); + if (result != VK_SUCCESS) + return; } struct cs_builder *b = @@ -2075,8 +2077,11 @@ panvk_per_arch(CmdEndRendering)(VkCommandBuffer commandBuffer) for (unsigned i = 0; i < fbinfo->rt_count; i++) clear |= fbinfo->rts[i].clear; - if (clear) - get_fb_descs(cmdbuf); + if (clear) { + VkResult result = get_fb_descs(cmdbuf); + if (result != VK_SUCCESS) + return; + } flush_tiling(cmdbuf); issue_fragment_jobs(cmdbuf);