From a04f244c0c0500cbc2cfd41a9fe27c5dbcc52adb Mon Sep 17 00:00:00 2001 From: Matt Coster Date: Tue, 16 May 2023 09:37:46 +0100 Subject: [PATCH] pvr: Reorder execution in pvr_cmd_buffer_end_sub_cmd() This allows sub_cmd->job.run_frag to be setup before calling pvr_sub_cmd_gfx_requires_split_submit(). Signed-off-by: Matt Coster Reported-by: James Glanville Reviewed-by: Karmjit Mahil Part-of: --- src/imagination/vulkan/pvr_cmd_buffer.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/imagination/vulkan/pvr_cmd_buffer.c b/src/imagination/vulkan/pvr_cmd_buffer.c index 4801de4..37ca9e7 100644 --- a/src/imagination/vulkan/pvr_cmd_buffer.c +++ b/src/imagination/vulkan/pvr_cmd_buffer.c @@ -1786,14 +1786,6 @@ VkResult pvr_cmd_buffer_end_sub_cmd(struct pvr_cmd_buffer *cmd_buffer) if (result != VK_SUCCESS) return pvr_cmd_buffer_set_error_unwarned(cmd_buffer, result); - if (pvr_sub_cmd_gfx_requires_split_submit(gfx_sub_cmd)) { - result = pvr_sub_cmd_gfx_build_terminate_ctrl_stream(device, - cmd_buffer, - gfx_sub_cmd); - if (result != VK_SUCCESS) - return pvr_cmd_buffer_set_error_unwarned(cmd_buffer, result); - } - result = pvr_cmd_buffer_emit_ppp_state(cmd_buffer, &gfx_sub_cmd->control_stream); if (result != VK_SUCCESS) @@ -1809,6 +1801,14 @@ VkResult pvr_cmd_buffer_end_sub_cmd(struct pvr_cmd_buffer *cmd_buffer) if (result != VK_SUCCESS) return pvr_cmd_buffer_set_error_unwarned(cmd_buffer, result); + if (pvr_sub_cmd_gfx_requires_split_submit(gfx_sub_cmd)) { + result = pvr_sub_cmd_gfx_build_terminate_ctrl_stream(device, + cmd_buffer, + gfx_sub_cmd); + if (result != VK_SUCCESS) + return pvr_cmd_buffer_set_error_unwarned(cmd_buffer, result); + } + break; } -- 2.7.4