| // Copyright 2016-2021 The Khronos Group, Inc. |
| // |
| // SPDX-License-Identifier: CC-BY-4.0 |
| |
| include::{generated}/meta/{refprefix}VK_KHR_external_semaphore_fd.txt[] |
| |
| === Other Extension Metadata |
| |
| *Last Modified Date*:: |
| 2016-10-21 |
| *IP Status*:: |
| No known IP claims. |
| *Contributors*:: |
| - Jesse Hall, Google |
| - James Jones, NVIDIA |
| - Jeff Juliano, NVIDIA |
| - Carsten Rohde, NVIDIA |
| |
| === 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 POSIX file descriptors. |
| |
| include::{generated}/interfaces/VK_KHR_external_semaphore_fd.txt[] |
| |
| === Issues |
| |
| 1) Does the application need to close the file descriptor returned by |
| flink:vkGetSemaphoreFdKHR? |
| |
| *RESOLVED*: Yes, unless it is passed back in to a driver instance to import |
| the semaphore. |
| A successful get call transfers ownership of the file descriptor to the |
| application, and a successful import transfers it back to the driver. |
| Destroying the original semaphore object will not close the file descriptor |
| or remove its reference to the underlying semaphore resource associated with |
| it. |
| |
| === Version History |
| |
| * Revision 1, 2016-10-21 (Jesse Hall) |
| - Initial revision |