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

Issue 2103123002: Move static GL binding initialization to //ui/gl/init. (Closed)

Created:
4 years, 5 months ago by kylechar
Modified:
4 years, 5 months ago
Reviewers:
Dirk Pranke, piman
CC:
chromium-reviews, piman+watch_chromium.org, ozone-reviews_chromium.org, kalyank
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Move static GL binding initialization to //ui/gl/init. Static GL binding initialization needs to call out to the Ozone platform. Move this initialization code from //ui/gl to //ui/gl/init as part of larger effort to break //ui/gl dep on //ui/ozone. Also move InitializationDebugGLBindings() and ClearGLBindings() in a similar fashion as they are closely linked to static initialization. Unfortunately, dynamic GL binding initialization can't be moved //ui/gl/init. It would be nice to have all the initialization code in one target but dynamic GL binding initialization is used by GLContext. The existing InitializationStaticGLBindings() functions had grown to be very large for some platforms. Where appropriate the code for each implementation has been extracted into it's own method to improve readability. The PRESUBMIT.py script is modified slightly here. The existing static GL initialization uses ScopedAllowIO on some platforms. This function is banned so moving the code triggers presubmit errors. The GPU main thread can't continue until initialization is finished anyways so moving blocking code to a different thread isn't helpful. Add new exemptions to PRESUBMIT.py. This is a resubmission of r402259. The original patch was reverted after it broke the win Chrome branded build. The include directory for swiftshader was missing, this CL now modifies BUILD.gn and *.gyp files appropriately. BUG=611142 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel Committed: https://crrev.com/166662417d4e35a04db2d9bd51e32da1d7119a12 Cr-Commit-Position: refs/heads/master@{#403714}

Patch Set 1 #

Patch Set 2 : Fix swiftshader include. #

Patch Set 3 : Rebase. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+812 lines, -800 lines) Patch
M PRESUBMIT.py View 1 chunk +5 lines, -2 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M gpu/command_buffer/service/gpu_service_test.cc View 2 chunks +2 lines, -1 line 0 comments Download
M gpu/config/gpu_info_collector_unittest.cc View 2 chunks +2 lines, -1 line 0 comments Download
M gpu/ipc/service/gpu_channel_unittest.cc View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M ui/gl/BUILD.gn View 1 2 1 chunk +1 line, -4 lines 0 comments Download
M ui/gl/angle_platform_impl.h View 1 chunk +3 lines, -1 line 0 comments Download
M ui/gl/gl.gyp View 1 2 1 chunk +0 lines, -1 line 0 comments Download
M ui/gl/gl_egl_api_implementation.h View 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gl_egl_api_implementation.cc View 2 chunks +18 lines, -0 lines 0 comments Download
M ui/gl/gl_gl_api_implementation.h View 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gl_glx_api_implementation.h View 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gl_implementation.h View 5 chunks +6 lines, -13 lines 0 comments Download
M ui/gl/gl_implementation_android.cc View 3 chunks +4 lines, -94 lines 0 comments Download
M ui/gl/gl_implementation_mac.cc View 4 chunks +4 lines, -108 lines 0 comments Download
M ui/gl/gl_implementation_osmesa.h View 1 chunk +5 lines, -4 lines 0 comments Download
M ui/gl/gl_implementation_ozone.cc View 2 chunks +2 lines, -71 lines 0 comments Download
M ui/gl/gl_implementation_win.cc View 3 chunks +3 lines, -301 lines 0 comments Download
M ui/gl/gl_implementation_x11.cc View 4 chunks +4 lines, -166 lines 0 comments Download
M ui/gl/gl_osmesa_api_implementation.h View 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gl_wgl_api_implementation.h View 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gpu_timing_unittest.cc View 2 chunks +2 lines, -1 line 0 comments Download
M ui/gl/init/BUILD.gn View 1 1 chunk +2 lines, -0 lines 0 comments Download
M ui/gl/init/gl_factory.h View 2 chunks +11 lines, -8 lines 0 comments Download
M ui/gl/init/gl_factory.cc View 1 chunk +7 lines, -0 lines 0 comments Download
M ui/gl/init/gl_init.gyp View 1 1 chunk +3 lines, -0 lines 0 comments Download
M ui/gl/init/gl_initializer.h View 1 chunk +12 lines, -1 line 0 comments Download
M ui/gl/init/gl_initializer_android.cc View 2 chunks +79 lines, -1 line 0 comments Download
M ui/gl/init/gl_initializer_mac.cc View 4 chunks +109 lines, -0 lines 0 comments Download
M ui/gl/init/gl_initializer_ozone.cc View 2 chunks +63 lines, -1 line 0 comments Download
M ui/gl/init/gl_initializer_win.cc View 2 chunks +289 lines, -1 line 0 comments Download
M ui/gl/init/gl_initializer_x11.cc View 2 chunks +154 lines, -1 line 0 comments Download
M ui/gl/test/gl_image_test_support.cc View 2 chunks +2 lines, -1 line 0 comments Download
M ui/gl/test/gl_surface_test_support.cc View 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 24 (13 generated)
kylechar
Resending this CL that was committed/reverted yesterday. The original patch had the official windows builder ...
4 years, 5 months ago (2016-06-28 14:59:08 UTC) #3
piman
lgtm
4 years, 5 months ago (2016-06-28 15:36:14 UTC) #4
Dirk Pranke
lgtm
4 years, 5 months ago (2016-06-28 17:39:51 UTC) #6
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/2103123002/20001
4 years, 5 months ago (2016-06-28 17:45:12 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: linux_optional_gpu_tests_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_optional_gpu_tests_rel/builds/1017)
4 years, 5 months ago (2016-06-28 19:05:24 UTC) #10
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/2103123002/40001
4 years, 5 months ago (2016-07-04 15:18:45 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: win_optional_gpu_tests_rel on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_optional_gpu_tests_rel/builds/1958)
4 years, 5 months ago (2016-07-04 16:39:32 UTC) #17
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/2103123002/40001
4 years, 5 months ago (2016-07-04 20:50:26 UTC) #19
kylechar
On 2016/07/04 20:50:26, commit-bot: I haz the power wrote: > CQ is trying da patch. ...
4 years, 5 months ago (2016-07-04 20:54:52 UTC) #20
commit-bot: I haz the power
Committed patchset #3 (id:40001)
4 years, 5 months ago (2016-07-04 20:55:00 UTC) #22
commit-bot: I haz the power
4 years, 5 months ago (2016-07-04 20:57:39 UTC) #24
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/166662417d4e35a04db2d9bd51e32da1d7119a12
Cr-Commit-Position: refs/heads/master@{#403714}

Powered by Google App Engine
This is Rietveld 408576698