anv: Submit fence bo only after all command buffers
We were submitting the fence bo after each command buffer in a multi command buffer submit, causing us to occasionally complete the fence too early.
This commit is contained in:
parent
39a120aefe
commit
b0c30b77d4
|
@ -1012,20 +1012,20 @@ VkResult anv_QueueSubmit(
|
|||
"execbuf2 failed: %m");
|
||||
}
|
||||
|
||||
if (fence) {
|
||||
ret = anv_gem_execbuffer(device, &fence->execbuf);
|
||||
if (ret != 0) {
|
||||
/* We don't know the real error. */
|
||||
return vk_errorf(VK_ERROR_OUT_OF_DEVICE_MEMORY,
|
||||
"execbuf2 failed: %m");
|
||||
}
|
||||
}
|
||||
|
||||
for (uint32_t k = 0; k < cmd_buffer->execbuf2.bo_count; k++)
|
||||
cmd_buffer->execbuf2.bos[k]->offset = cmd_buffer->execbuf2.objects[k].offset;
|
||||
}
|
||||
}
|
||||
|
||||
if (fence) {
|
||||
ret = anv_gem_execbuffer(device, &fence->execbuf);
|
||||
if (ret != 0) {
|
||||
/* We don't know the real error. */
|
||||
return vk_errorf(VK_ERROR_OUT_OF_DEVICE_MEMORY,
|
||||
"execbuf2 failed: %m");
|
||||
}
|
||||
}
|
||||
|
||||
return VK_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue