1Name 2 3 ANGLE_global_fence_sync 4 5Name Strings 6 7 EGL_ANGLE_global_fence_sync 8 9Contributors 10 11 Shahbaz Youssefi, Google 12 13Contacts 14 15 Shahbaz Youssefi, Google (syoussefi 'at' google.com) 16 17Status 18 19 Draft 20 21Version 22 23 Version 1, 2024-02-13 24 25Number 26 27 EGL Extensions XXX 28 29Extension Type 30 31 EGL display extension 32 33Dependencies 34 35 This extension is written against the wording of the EGL 1.5 36 Specification. 37 38Overview 39 40 This extension enables the creation of EGL fence sync objects that 41 synchronize with all past submissions of all contexts. Normally, if two 42 contexts make submissions, even on the same thread, the inserted fence sync 43 only guarantees synchronization with the submissions from the context in 44 which the fence was inserted. With the new fence sync type introduced by 45 this extension, the application can synchronize with both contexts in this 46 example using a single fence. 47 48New Types 49 50 None. 51 52New Procedures and Functions 53 54 None. 55 56New Tokens 57 58 Accepted by the <type> parameter of eglCreateSync, and returned 59 in <value> when eglGetSyncAttrib is called with <attribute> 60 EGL_SYNC_TYPE: 61 62 EGL_SYNC_GLOBAL_FENCE_ANGLE 0x34DE 63 64Additions to the EGL Specification 65 66 Add the following after the second paragraph of Section 3.8.1.1 (Creating 67 Fence Sync Objects), 68 69 "If <type> is EGL_SYNC_GLOBAL_FENCE_ANGLE, behavior is identical to 70 EGL_SYNC_FENCE except that synchronization is additionally done with all 71 previously submitted commands by all contexts." 72 73 In the Errors of eglCreateSync, replace all instances of "If type is 74 EGL_SYNC_FENCE" with "If type is EGL_SYNC_FENCE or 75 EGL_SYNC_GLOBAL_FENCE_ANGLE". 76 77Issues 78 79 None. 80 81Revision History 82 83 Version 1, 2024-02-13 84 - Initial draft 85 86