anv: only signal wsi fence BO on last command buffer
I'm pretty sure this doesn't fix anything because the WSI code only
use a single VkSubmitInfo, but better be safe.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes: ccb7d606f1
("anv: Use submit-time implicit sync instead of allocate-time")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8934>
This commit is contained in:

committed by
Marge Bot

parent
8297a9a429
commit
64cb03a52d
@@ -1351,7 +1351,8 @@ VkResult anv_QueueSubmit(
|
|||||||
num_in_semaphores = pSubmits[i].waitSemaphoreCount;
|
num_in_semaphores = pSubmits[i].waitSemaphoreCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (j == pSubmits[i].commandBufferCount - 1) {
|
const bool is_last_cmd_buffer = j == pSubmits[i].commandBufferCount - 1;
|
||||||
|
if (is_last_cmd_buffer) {
|
||||||
/* Only the last batch gets the out semaphores */
|
/* Only the last batch gets the out semaphores */
|
||||||
out_semaphores = pSubmits[i].pSignalSemaphores;
|
out_semaphores = pSubmits[i].pSignalSemaphores;
|
||||||
out_values = signal_values;
|
out_values = signal_values;
|
||||||
@@ -1361,7 +1362,8 @@ VkResult anv_QueueSubmit(
|
|||||||
result = anv_queue_submit(queue, cmd_buffer,
|
result = anv_queue_submit(queue, cmd_buffer,
|
||||||
in_semaphores, in_values, num_in_semaphores,
|
in_semaphores, in_values, num_in_semaphores,
|
||||||
out_semaphores, out_values, num_out_semaphores,
|
out_semaphores, out_values, num_out_semaphores,
|
||||||
wsi_signal_bo, execbuf_fence,
|
is_last_cmd_buffer ? wsi_signal_bo : NULL,
|
||||||
|
execbuf_fence,
|
||||||
perf_info ? perf_info->counterPassIndex : 0);
|
perf_info ? perf_info->counterPassIndex : 0);
|
||||||
if (result != VK_SUCCESS)
|
if (result != VK_SUCCESS)
|
||||||
goto out;
|
goto out;
|
||||||
|
Reference in New Issue
Block a user