diff --git a/src/intel/vulkan/i915/anv_batch_chain.c b/src/intel/vulkan/i915/anv_batch_chain.c index cc07abf12c0..04db7a79396 100644 --- a/src/intel/vulkan/i915/anv_batch_chain.c +++ b/src/intel/vulkan/i915/anv_batch_chain.c @@ -969,11 +969,11 @@ i915_queue_exec_locked(struct anv_queue *queue, ANV_RMV(bos_gtt_map, device, execbuf.bos, execbuf.bo_count); - int ret = queue->device->info->no_hw ? 0 : - anv_gem_execbuffer(queue->device, &execbuf.execbuf); - if (ret) { - anv_i915_debug_submit(&execbuf); - result = vk_queue_set_lost(&queue->vk, "execbuf2 failed: %m"); + if (result == VK_SUCCESS && !queue->device->info->no_hw) { + if (anv_gem_execbuffer(queue->device, &execbuf.execbuf)) { + anv_i915_debug_submit(&execbuf); + result = vk_queue_set_lost(&queue->vk, "execbuf2 failed: %m"); + } } if (cmd_buffer_count != 0 && cmd_buffers[0]->companion_rcs_cmd_buffer) {