vulkan/wsi: Provide the implicitly synchronized BO to vkQueueSubmit
authorJason Ekstrand <jason@jlekstrand.net>
Thu, 21 Nov 2019 11:47:10 +0000 (05:47 -0600)
committerJason Ekstrand <jason@jlekstrand.net>
Fri, 6 Dec 2019 19:58:06 +0000 (19:58 +0000)
commit48e23a64067ab7f775b1c4e2966041fbbf9d42e3
treefc61ab2529e67c8358bd25ddae246c515cff6cd8
parentd07ed0c9c9a90c8a2936d12f9a83696f24e0aaac
vulkan/wsi: Provide the implicitly synchronized BO to vkQueueSubmit

This lets us treat the implicit synchronization that we need for X11 and
Wayland like a semaphore.  Instead of trusting the driver to somehow
figure out when that memory object needs to be signaled, we provide an
explicit point where the driver can set EXEC_OBJECT_WRITE and signal the
dma_fence on the BO.  Without this, we have to somehow track inside the
driver when WSI buffers are actually used to avoid extra synchronization
dependencies.

Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
src/vulkan/wsi/wsi_common.c
src/vulkan/wsi/wsi_common.h