anv: Use the common QueueSignalReleaseImageANDROID from RADV

This is an actual functional change as we now plumb through the sync FD
instead of doing a vkQueueSubmit and trusting in implicit sync.

Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Tested-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14372>
This commit is contained in:
Jason Ekstrand 2022-01-01 23:06:13 -06:00 committed by Marge Bot
parent b2073f5e5d
commit a9321b1309

View file

@ -791,40 +791,3 @@ VkResult anv_GetSwapchainGrallocUsageANDROID(
return setup_gralloc0_usage(device, format, imageUsage, grallocUsage);
}
VkResult
anv_QueueSignalReleaseImageANDROID(
VkQueue queue,
uint32_t waitSemaphoreCount,
const VkSemaphore* pWaitSemaphores,
VkImage image,
int* pNativeFenceFd)
{
VkResult result;
if (waitSemaphoreCount == 0)
goto done;
result = vk_common_QueueSubmit(queue, 1,
&(VkSubmitInfo) {
.sType = VK_STRUCTURE_TYPE_SUBMIT_INFO,
.waitSemaphoreCount = 1,
.pWaitSemaphores = pWaitSemaphores,
.pWaitDstStageMask = &(VkPipelineStageFlags) {
VK_PIPELINE_STAGE_ALL_COMMANDS_BIT
},
},
(VkFence) VK_NULL_HANDLE);
if (result != VK_SUCCESS)
return result;
done:
if (pNativeFenceFd) {
/* We can rely implicit on sync because above we submitted all
* semaphores to the queue.
*/
*pNativeFenceFd = -1;
}
return VK_SUCCESS;
}