mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 04:38:03 +02:00
anv/cmd_buffer: handle allocation errors during vkCmdBeginRenderPass()
Fixes: dEQP-VK.api.out_of_host_memory.cmd_begin_render_pass Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
parent
d823f381a5
commit
94a4f0c255
1 changed files with 11 additions and 3 deletions
|
|
@ -406,8 +406,9 @@ genX(cmd_buffer_setup_attachments)(struct anv_cmd_buffer *cmd_buffer,
|
|||
sizeof(state->attachments[0]),
|
||||
8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT);
|
||||
if (state->attachments == NULL) {
|
||||
/* FIXME: Propagate VK_ERROR_OUT_OF_HOST_MEMORY to vkEndCommandBuffer */
|
||||
return VK_ERROR_OUT_OF_HOST_MEMORY;
|
||||
/* Propagate VK_ERROR_OUT_OF_HOST_MEMORY to vkEndCommandBuffer */
|
||||
return anv_batch_set_error(&cmd_buffer->batch,
|
||||
VK_ERROR_OUT_OF_HOST_MEMORY);
|
||||
}
|
||||
|
||||
bool need_null_state = false;
|
||||
|
|
@ -2504,7 +2505,14 @@ void genX(CmdBeginRenderPass)(
|
|||
cmd_buffer->state.framebuffer = framebuffer;
|
||||
cmd_buffer->state.pass = pass;
|
||||
cmd_buffer->state.render_area = pRenderPassBegin->renderArea;
|
||||
genX(cmd_buffer_setup_attachments)(cmd_buffer, pass, pRenderPassBegin);
|
||||
VkResult result =
|
||||
genX(cmd_buffer_setup_attachments)(cmd_buffer, pass, pRenderPassBegin);
|
||||
|
||||
/* If we failed to setup the attachments we should not try to go further */
|
||||
if (result != VK_SUCCESS) {
|
||||
assert(anv_batch_has_error(&cmd_buffer->batch));
|
||||
return;
|
||||
}
|
||||
|
||||
genX(flush_pipeline_select_3d)(cmd_buffer);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue