Skip to content
  • Alexandros Frantzis's avatar
    libweston: Support zwp_surface_synchronization_v1.set_acquire_fence · acff29b3
    Alexandros Frantzis authored and Pekka Paalanen's avatar Pekka Paalanen committed
    Implement the set_acquire_fence request of the
    zwp_surface_synchronization_v1 interface.
    
    The implementation uses the acquire fence in two ways:
    
    1. If the associated buffer is used as GL render source, an
       EGLSyncKHR is created from the fence and used to synchronize
       access.
    2. If the associated buffer is used as a plane framebuffer,
       the acquire fence is treated as an in-fence for the atomic
       commit operation. If in-fences are not supported and the buffer
       has an acquire fence, we don't consider it for plane placement.
    
    If the used compositor/renderer doesn't support explicit
    synchronization, we don't advertise the protocol at all. Currently only
    the DRM and X11 backends when using the GL renderer advertise the
    protocol for production use.
    
    Issues for discussion
    ---------------------
    
    a. Currently, a server-side wait of EGLSyncKHR is performed before
       using the EGLImage/texture during rendering. Unfortunately, it's not clear...
    acff29b3