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

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

Created:
4 years, 8 months ago by stevenjb
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 #20 id:380001 of https://codereview.chromium.org/1714883002/ ) Reason for revert: Unfortunately I have to revert this, it is causing compile failures in the chroot. Example builder: https://uberchromegw.corp.google.com/i/chromeos.chrome/builders/x86-alex-tot-chrome-pfq-informational/builds/19729 Failure: chromeos-chrome-52.0.2714.0_alpha-r1: ../../../../../../../home/chrome-bot/chrome_root/src/gpu/khronos_glcts_support/native/egl_native_windowless.cc: In member function 'virtual tcu::NativeWindow* egl::native::windowless::Platform::createWindow(tcu::NativeDisplay&, EGLConfig, const EGLint*, int, int, qpVisibility)': chromeos-chrome-52.0.2714.0_alpha-r1: ../../../../../../../home/chrome-bot/chrome_root/src/gpu/khronos_glcts_support/native/egl_native_windowless.cc:79:69: error: 'CommandBufferGLESSetNextCreateWindowSurfaceCreatesPBuffer' was not declared in this scope chromeos-chrome-52.0.2714.0_alpha-r1: height); 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/d4d63ccaf80bcb4b2cc61bef2513e37552bb3304 Cr-Commit-Position: refs/heads/master@{#388523}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+787 lines, -2125 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, -601 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, -124 lines 0 comments Download
D gpu/gles2_conform_support/egl/context.cc View 1 chunk +0 lines, -413 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.h View 1 chunk +94 lines, -65 lines 0 comments Download
M gpu/gles2_conform_support/egl/display.cc View 3 chunks +361 lines, -347 lines 0 comments Download
M gpu/gles2_conform_support/egl/egl.cc View 6 chunks +299 lines, -99 lines 0 comments Download
M gpu/gles2_conform_support/egl/surface.h View 1 chunk +8 lines, -20 lines 0 comments Download
M gpu/gles2_conform_support/egl/surface.cc View 1 chunk +2 lines, -35 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, -198 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
M gpu/khronos_glcts_support/native/egl_native_windowless.cc View 1 chunk +3 lines, -3 lines 0 comments Download

Messages

Total messages: 6 (2 generated)
stevenjb
Created Revert of command_buffer_gles2: Implement EGL default Display as a global object
4 years, 8 months ago (2016-04-20 17:04:42 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1909573002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1909573002/1
4 years, 8 months ago (2016-04-20 17:04:50 UTC) #2
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 8 months ago (2016-04-20 17:05:37 UTC) #4
commit-bot: I haz the power
4 years, 8 months ago (2016-04-22 19:24:29 UTC) #6
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/d4d63ccaf80bcb4b2cc61bef2513e37552bb3304
Cr-Commit-Position: refs/heads/master@{#388523}

Powered by Google App Engine
This is Rietveld 408576698