Lines Matching refs:fence

304             // if we're detached, we just use the fence that was created in detachFromContext()
478 pendingRelease->fence = mEglSlots[mCurrentTexture].mEglFence;
580 void GLConsumer::setReleaseFence(const sp<Fence>& fence) {
581 if (fence->isValid() &&
584 mCurrentTextureImage->graphicBuffer(), fence);
586 GLC_LOGE("setReleaseFence: failed to add the fence: %s (%d)",
698 GLC_LOGE("syncForReleaseLocked: error creating EGL fence: %#x",
706 GLC_LOGE("syncForReleaseLocked: error dup'ing native fence "
710 sp<Fence> fence(new Fence(fenceFd));
712 mCurrentTextureImage->graphicBuffer(), fence);
714 GLC_LOGE("syncForReleaseLocked: error adding release fence: "
719 EGLSyncKHR fence = mEglSlots[mCurrentTexture].mEglFence;
720 if (fence != EGL_NO_SYNC_KHR) {
721 // There is already a fence for the current slot. We need to
722 // wait on that before replacing it with another fence to
725 EGLint result = eglClientWaitSyncKHR(dpy, fence, 0, 1000000000);
728 "fence: %#x", eglGetError());
732 "fence");
735 eglDestroySyncKHR(dpy, fence);
738 // Create a fence for the outstanding accesses in the current
740 fence = eglCreateSyncKHR(dpy, EGL_SYNC_FENCE_KHR, NULL);
741 if (fence == EGL_NO_SYNC_KHR) {
742 GLC_LOGE("syncForReleaseLocked: error creating fence: %#x",
747 mEglSlots[mCurrentTexture].mEglFence = fence;
1006 // Create an EGLSyncKHR from the current fence.
1009 GLC_LOGE("doGLFenceWait: error dup'ing fence fd: %d", errno);
1020 GLC_LOGE("doGLFenceWait: error creating EGL fence: %#x",
1032 GLC_LOGE("doGLFenceWait: error waiting for EGL fence: %#x",
1040 GLC_LOGE("doGLFenceWait: error waiting for fence: %d", err);