Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(196)

Issue 2866903002: Revert of ozone: Wait on EGLFence before committing buffers. Avoid using GL. (Closed)

Created:
3 years, 7 months ago by kcwu
Modified:
3 years, 5 months ago
CC:
chromium-reviews, kalyank, ozone-reviews_chromium.org, piman+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Revert of ozone: Wait on EGLFence before committing buffers. Avoid using GL. (patchset #2 id:20001 of https://codereview.chromium.org/2858693002/ ) Reason for revert: This makes video_VideoDecodeAccelerator failed on all ChromeOS boards. BUG=719145 Original issue's description: > ozone: Wait on EGLFence before committing buffers. Avoid using GL. > > GbmSurfaceless::SwapBuffersAsync used to always call glFlush, to call > glFinish for universal link display device, and to insert an EGL fence > and wait on it when "EGL_ARM_implicit_external_sync" or > "EGL_EXT_image_flush_external" was available. > > There is no guarantee that the current GL context when > GbmSurfaceless::SwapBuffersAsync is called is the context that was > used to draw to the buffers we are about to commit. > Additionally a glFlush or glFinish call does not guarantee content > is written and flushed to buffers after those calls return. > > This caused some flickering on Mimo (udl device) since we'd submit > for scanout buffers while GL was still drawing to them. > > This CL removes all the GL calls in GbmSurfaceless::SwapBuffersAsync, > that might have happened on the wrong context. It changes the code so > that we always insert and wait on an EGL fence, even on devices where > we don't have implicit sync or flush external, making SwapBuffersAsync > behavior more consistent across platforms. > > BUG=692508 > > Review-Url: https://codereview.chromium.org/2858693002 > Cr-Commit-Position: refs/heads/master@{#468785} > Committed: https://chromium.googlesource.com/chromium/src/+/00ef929f434505f4d09a130e0bc1d4a4938d490f TBR=dnicoara@chromium.org,marcheu@chromium.org,reveman@chromium.org,dcastagna@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=692508

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+38 lines, -19 lines) Patch
M ui/ozone/platform/drm/gpu/gbm_surfaceless.h View 2 chunks +3 lines, -0 lines 0 comments Download
M ui/ozone/platform/drm/gpu/gbm_surfaceless.cc View 5 chunks +35 lines, -19 lines 0 comments Download

Messages

Total messages: 6 (3 generated)
kcwu
Created Revert of ozone: Wait on EGLFence before committing buffers. Avoid using GL.
3 years, 7 months ago (2017-05-06 09:02:47 UTC) #2
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2866903002/1
3 years, 7 months ago (2017-05-06 09:03:19 UTC) #3
commit-bot: I haz the power
3 years, 7 months ago (2017-05-06 09:06:41 UTC) #5
Try jobs failed on following builders:
  android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED,
https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...)
  android_cronet on master.tryserver.chromium.android (JOB_FAILED,
https://build.chromium.org/p/tryserver.chromium.android/builders/android_cron...)
  linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux
(JOB_FAILED,
http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...)

Powered by Google App Engine
This is Rietveld 408576698