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

Issue 1895153002: Revert of command_buffer_gles2: Implement EGL default Display as a global object (Closed)

Created:
4 years, 8 months ago by Zhenyao Mo
Modified:
4 years, 8 months ago
CC:
chromium-reviews, piman+watch_chromium.org, Sami Väisänen
Base URL:
https://chromium.googlesource.com/chromium/src.git@command_buffer_gles2-multiple-contexts
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Revert of command_buffer_gles2: Implement EGL default Display as a global object (patchset #18 id:340001 of https://codereview.chromium.org/1714883002/ ) Reason for revert: This caused almost all GPU debug bots to fail the gles2_conform_test. [0418/032049:FATAL:gl_surface_egl.cc(1013)] Check failed: false. Attempted to call SwapBuffers on a PbufferGLSurfaceEGL. Original issue's description: > command_buffer_gles2: Implement EGL default Display as a global object > > Make EGL Display a global. eglGetDisplay(EGL_DEFAULT_DISPLAY) will > return the same object. > > Store EGL state in a new thread-local object (ThreadState). One > display, multiple surfaces, multiple contexts. > > Fix the currently implemented entry points to return specified errors > and behave as specified. Notable changes: > * eglGetDisplay() does not create new displays for each invocation > * eglTerminate() invalidates the created egl objects but leaves the > current context intact as specified > * eglMakeCurrent() is implemented more correctly with refcount semantics > * eglQueryStrings() works without display for some names > * eglReleaseThread() is implemeted > * Config are now separate for pbuffers and windows, so that contexts > can be created separate from surfaces > * Context can be made current with different surfaces > * Catches errors related to context being set current to multiple > threads > * Tries to be thread-safe > > In the implementation, the Display contains a lock ensuring all thread > accesses are consistent. All functions using or changing thread-local > state have explicit egl::ThreadState parameter. > > BUG=581634 > CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel > > Committed: https://crrev.com/de9aa3be41bca094454babbd62907815fad7f5c2 > Cr-Commit-Position: refs/heads/master@{#377535} > > Committed: https://crrev.com/7b01a0867be0895009b120f37fcd4166a84f404b > Cr-Commit-Position: refs/heads/master@{#386613} > > Committed: https://crrev.com/f9d5c7e6fd53570c0decc63e8ec51d30e0701c89 > Cr-Commit-Position: refs/heads/master@{#387871} TBR=piman@chromium.org,thakis@chromium.org,vabr@chromium.org,kkinnunen@nvidia.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=581634 Committed: https://crrev.com/235699163aab454fc91725310c6da772296ed9c6 Cr-Commit-Position: refs/heads/master@{#387942}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+777 lines, -2085 lines) Patch
M gpu/BUILD.gn View 3 chunks +0 lines, -5 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.h View 1 chunk +0 lines, -4 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 3 chunks +1 line, -14 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_mock.h View 1 chunk +0 lines, -1 line 0 comments Download
M gpu/command_buffer/tests/command_buffer_gles2_tests_main.cc View 1 chunk +1 line, -1 line 0 comments Download
M gpu/command_buffer/tests/egl_test.cc View 1 chunk +11 lines, -590 lines 0 comments Download
M gpu/gles2_conform_support/egl/BUILD.gn View 2 chunks +0 lines, -7 lines 0 comments Download
M gpu/gles2_conform_support/egl/config.h View 1 chunk +2 lines, -3 lines 0 comments Download
M gpu/gles2_conform_support/egl/config.cc View 3 chunks +2 lines, -72 lines 0 comments Download
D gpu/gles2_conform_support/egl/context.h View 1 chunk +0 lines, -120 lines 0 comments Download
D gpu/gles2_conform_support/egl/context.cc View 1 chunk +0 lines, -398 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.h View 1 chunk +93 lines, -66 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.cc View 3 chunks +357 lines, -347 lines 0 comments Download
M gpu/gles2_conform_support/egl/egl.cc View 6 chunks +297 lines, -99 lines 0 comments Download
M gpu/gles2_conform_support/egl/surface.h View 1 chunk +8 lines, -17 lines 0 comments Download
M gpu/gles2_conform_support/egl/surface.cc View 1 chunk +2 lines, -29 lines 0 comments Download
M gpu/gles2_conform_support/egl/test_support.h View 2 chunks +0 lines, -13 lines 0 comments Download
M gpu/gles2_conform_support/egl/test_support.cc View 1 chunk +0 lines, -15 lines 0 comments Download
D gpu/gles2_conform_support/egl/thread_state.h View 1 chunk +0 lines, -70 lines 0 comments Download
D gpu/gles2_conform_support/egl/thread_state.cc View 1 chunk +0 lines, -199 lines 0 comments Download
M gpu/gles2_conform_support/gles2_conform_support.gyp View 2 chunks +0 lines, -7 lines 0 comments Download
M gpu/gles2_conform_support/native/egl_native_windowless.cc View 2 chunks +3 lines, -3 lines 0 comments Download
M gpu/gpu.gyp View 3 chunks +0 lines, -5 lines 0 comments Download

Messages

Total messages: 11 (5 generated)
Zhenyao Mo
Created Revert of command_buffer_gles2: Implement EGL default Display as a global object
4 years, 8 months ago (2016-04-18 17:19:10 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1895153002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1895153002/1
4 years, 8 months ago (2016-04-18 17:19:26 UTC) #2
commit-bot: I haz the power
Failed to apply patch for gpu/gles2_conform_support/egl/display.cc: While running git apply --index -3 -p1; error: patch ...
4 years, 8 months ago (2016-04-18 17:20:24 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1895153002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1895153002/1
4 years, 8 months ago (2016-04-18 17:30:07 UTC) #7
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 8 months ago (2016-04-18 17:31:07 UTC) #9
commit-bot: I haz the power
4 years, 8 months ago (2016-04-18 17:32:14 UTC) #11
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/235699163aab454fc91725310c6da772296ed9c6
Cr-Commit-Position: refs/heads/master@{#387942}

Powered by Google App Engine
This is Rietveld 408576698