VK_FUCHSIA_external_semaphore
Other Extension Metadata
Last Modified Date
2021-03-08
IP Status
No known IP claims.
Contributors
- Craig Stout, Google
- John Bauman, Google
- John Rosasco, Google
Description
An application using external memory may wish to synchronize access to that memory using semaphores. This extension enables an application to export semaphore payload to and import semaphore payload from Zircon event handles.
New Commands
New Structures
New Enum Constants
VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME
VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION
- Extending VkExternalSemaphoreHandleTypeFlagBits:
VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA
- Extending VkStructureType:
VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA
VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA
Issues
1) Does the application need to close the Zircon event handle returned by vkGetSemaphoreZirconHandleFUCHSIA?
RESOLVED: Yes, unless it is passed back in to a driver instance to import the semaphore. A successful get call transfers ownership of the Zircon event handle to the application, and a successful import transfers it back to the driver. Destroying the original semaphore object will not close the Zircon event handle nor remove its reference to the underlying semaphore resource associated with it.
Version History
- Revision 1, 2021-03-08 (John Rosasco)
- Initial revision