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

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

Created:
4 years, 8 months ago by vabr (Chromium)
Modified:
4 years, 8 months ago
Reviewers:
Kimmo Kinnunen, Nico, piman
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 #16 id:300001 of https://codereview.chromium.org/1714883002/ ) Reason for revert: Broke GPU build on Linux, more info in http://crbug.com/581634#c18. 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} TBR=piman@chromium.org,thakis@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/938d4b784441bf7a31bce765cca7dd964b0098ec Cr-Commit-Position: refs/heads/master@{#386626}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+772 lines, -2078 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, -5 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, -119 lines 0 comments Download
D gpu/gles2_conform_support/egl/context.cc View 1 chunk +0 lines, -394 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.h View 1 chunk +92 lines, -66 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.cc View 3 chunks +353 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: 15 (3 generated)
vabr (Chromium)
Created Revert of command_buffer_gles2: Implement EGL default Display as a global object
4 years, 8 months ago (2016-04-12 08:34:21 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1878133003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1878133003/1
4 years, 8 months ago (2016-04-12 08:34:36 UTC) #2
vabr (Chromium)
On 2016/04/12 08:34:48, vabr (Chromium) wrote: > The CQ bit was unchecked by mailto:vabr@chromium.org Let ...
4 years, 8 months ago (2016-04-12 08:35:10 UTC) #4
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 8 months ago (2016-04-12 08:35:25 UTC) #5
vabr (Chromium)
On 2016/04/12 08:35:27, vabr (Chromium) wrote: > Description was changed from > > ========== > ...
4 years, 8 months ago (2016-04-12 08:35:53 UTC) #7
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/938d4b784441bf7a31bce765cca7dd964b0098ec Cr-Commit-Position: refs/heads/master@{#386626}
4 years, 8 months ago (2016-04-12 08:36:50 UTC) #9
vabr (Chromium)
> Hmm, too late, I'll check the tree then. The tree looks fine, and the ...
4 years, 8 months ago (2016-04-12 09:24:34 UTC) #10
Kimmo Kinnunen
On 2016/04/12 09:24:34, vabr (Chromium) wrote: > > Hmm, too late, I'll check the tree ...
4 years, 8 months ago (2016-04-12 11:38:51 UTC) #11
vabr (Chromium)
On 2016/04/12 11:38:51, Kimmo Kinnunen wrote: > On 2016/04/12 09:24:34, vabr (Chromium) wrote: > > ...
4 years, 8 months ago (2016-04-12 11:57:01 UTC) #12
vabr (Chromium)
On 2016/04/12 11:57:01, vabr (Chromium) wrote: > On 2016/04/12 11:38:51, Kimmo Kinnunen wrote: > > ...
4 years, 8 months ago (2016-04-12 11:58:46 UTC) #13
Kimmo Kinnunen
On 2016/04/12 11:58:46, vabr (Chromium) wrote: > Having read your message once more: masking GN ...
4 years, 8 months ago (2016-04-12 12:18:21 UTC) #14
vabr (Chromium)
4 years, 8 months ago (2016-04-12 12:33:59 UTC) #15
Message was sent while issue was closed.
On 2016/04/12 12:18:21, Kimmo Kinnunen wrote:
> On 2016/04/12 11:58:46, vabr (Chromium) wrote:
> > Having read your message once more: masking GN failures instead of fixing
them
> > sounds like a really bad idea. If you cannot reproduce the issue, please
find
> > somebody who works on a similar area and can do the build for you, do not
> commit
> > code with wrong build dependencies.
> 
> It's not wrong build dependency. It's a special case that already exist and
not
> invented by me.

Fair enough, let this be discussed with GPU OWNERS on the original CL
(https://codereview.chromium.org/1714883002/).

Powered by Google App Engine
This is Rietveld 408576698