| // Copyright 2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_FUCHSIA_external_semaphore.txt[] |
| |
| === 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. |
| |
| include::{generated}/interfaces/VK_FUCHSIA_external_semaphore.txt[] |
| |
| === Issues |
| |
| 1) Does the application need to close the Zircon event handle returned by |
| flink: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 |