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

Issue 2945673002: Allow creating GLImage-backed textures with glTexStorage2D. (Closed)

Created:
3 years, 6 months ago by jbauman
Modified:
3 years, 4 months ago
CC:
chromium-reviews, piman+watch_chromium.org, cc-bugs_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Allow creating GLImage-backed textures with glTexStorage2D. Add a GL_TEXTURE_BUFFER_USAGE_CHROMIUM TexParameter that can be specified before glTexStorage2D so it will create a texture that's backed by an anonymous GLImage. The compositor will use this for raster buffers that are drawn into using the GPU rasterizer (and thus don't need to be mapped) and are used with overlays. This will save a synchronous IPC through the browser into the GPU I/O thread when creating them. BUG= CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2945673002 Cr-Commit-Position: refs/heads/master@{#493302} Committed: https://chromium.googlesource.com/chromium/src/+/5b05b9032e67ea278ae3a3d1eb2731d1dcdb68c5

Patch Set 1 #

Patch Set 2 : add test #

Total comments: 1

Patch Set 3 : add extension spec and don't enable for webgl #

Total comments: 1

Patch Set 4 : set colorspace for iosurfaces #

Patch Set 5 : add caps #

Patch Set 6 : fix unittests #

Total comments: 1

Patch Set 7 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+440 lines, -30 lines) Patch
M cc/resources/resource_provider.h View 1 2 3 4 5 6 2 chunks +3 lines, -1 line 0 comments Download
M cc/resources/resource_provider.cc View 1 2 3 4 5 6 5 chunks +33 lines, -12 lines 0 comments Download
M cc/resources/resource_provider_unittest.cc View 1 2 3 4 5 6 9 chunks +64 lines, -5 lines 0 comments Download
M cc/test/test_web_graphics_context_3d.h View 1 2 3 4 5 6 1 chunk +3 lines, -0 lines 0 comments Download
A gpu/GLES2/extensions/CHROMIUM/CHROMIUM_texture_buffer.txt View 1 2 1 chunk +128 lines, -0 lines 0 comments Download
M gpu/GLES2/gl2extchromium.h View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/build_gles2_cmd_buffer.py View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/capabilities.h View 1 2 3 4 5 1 chunk +3 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils_autogen.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h View 1 2 3 4 5 6 2 chunks +16 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/feature_info.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/feature_info.cc View 1 2 3 4 1 chunk +6 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 5 6 4 chunks +66 lines, -1 line 0 comments Download
M gpu/command_buffer/service/gles2_cmd_validation_autogen.h View 1 chunk +6 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h View 1 2 1 chunk +10 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/image_factory.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/image_factory.cc View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/service/texture_manager.h View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/texture_manager.cc View 1 2 3 3 chunks +10 lines, -1 line 0 comments Download
M gpu/command_buffer/tests/gl_texture_storage_unittest.cc View 1 2 3 4 4 chunks +23 lines, -0 lines 0 comments Download
M gpu/command_buffer/tests/texture_image_factory.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/tests/texture_image_factory.cc View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/common/gpu_command_buffer_traits_multi.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/service/gpu_memory_buffer_factory_io_surface.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/service/gpu_memory_buffer_factory_io_surface.cc View 1 chunk +4 lines, -3 lines 0 comments Download
M gpu/ipc/service/gpu_memory_buffer_factory_native_pixmap.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/ipc/service/gpu_memory_buffer_factory_native_pixmap.cc View 1 2 3 1 chunk +5 lines, -4 lines 0 comments Download
M ui/gl/gl_bindings.h View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M ui/gl/gl_image.h View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M ui/gl/gl_image.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M ui/gl/gl_image_io_surface.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M ui/gl/gl_image_io_surface.mm View 1 2 3 2 chunks +20 lines, -0 lines 0 comments Download

Messages

Total messages: 67 (43 generated)
jbauman
3 years, 6 months ago (2017-06-19 22:52:38 UTC) #10
Zhenyao Mo
Mostly looks good please add extension doc under gpu/GLES2/extensions/CHROMIUM https://codereview.chromium.org/2945673002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py File gpu/command_buffer/build_gles2_cmd_buffer.py (right): https://codereview.chromium.org/2945673002/diff/20001/gpu/command_buffer/build_gles2_cmd_buffer.py#newcode1485 gpu/command_buffer/build_gles2_cmd_buffer.py:1485: ...
3 years, 6 months ago (2017-06-20 00:14:30 UTC) #11
jbauman
PTAL. On 2017/06/20 00:14:30, Zhenyao Mo wrote: > Mostly looks good > please add extension ...
3 years, 6 months ago (2017-06-20 22:25:31 UTC) #16
Zhenyao Mo
lgtm Thanks
3 years, 6 months ago (2017-06-20 22:29:45 UTC) #17
jbauman
ericrk@: cc/ OWNERS review?
3 years, 5 months ago (2017-06-26 23:55:46 UTC) #18
ericrk
This is really great! LGTM with one small question. I assume this works with the ...
3 years, 5 months ago (2017-06-27 00:31:30 UTC) #19
jbauman
On 2017/06/27 00:31:30, ericrk wrote: > This is really great! LGTM with one small question. ...
3 years, 5 months ago (2017-06-27 18:32:04 UTC) #20
ericrk
On 2017/06/27 18:32:04, jbauman wrote: > On 2017/06/27 00:31:30, ericrk wrote: > > This is ...
3 years, 5 months ago (2017-06-27 19:00:14 UTC) #21
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/2945673002/40001
3 years, 5 months ago (2017-06-27 21:58:11 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/487559)
3 years, 5 months ago (2017-06-27 22:57:50 UTC) #25
jbauman
dcheng: IPC review of gpu/ipc/common/gpu_command_buffer_traits_multi.h, please.
3 years, 4 months ago (2017-08-03 19:29:31 UTC) #39
jbauman
dcheng: friendly ping.
3 years, 4 months ago (2017-08-09 01:49:57 UTC) #40
dcheng1
LGTM with a nit (sorry for missing this, I don't check Rietveld much anymore, so ...
3 years, 4 months ago (2017-08-09 09:58:57 UTC) #42
dcheng
LGTM from the correct account this time.
3 years, 4 months ago (2017-08-09 09:59:22 UTC) #43
jbauman
On 2017/08/09 09:58:57, dcheng1 wrote: > LGTM with a nit > > (sorry for missing ...
3 years, 4 months ago (2017-08-09 20:23:05 UTC) #44
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/2945673002/100001
3 years, 4 months ago (2017-08-09 22:50:44 UTC) #47
commit-bot: I haz the power
Try jobs failed on following builders: linux_trusty_blink_rel on master.tryserver.blink (JOB_FAILED, http://build.chromium.org/p/tryserver.blink/builders/linux_trusty_blink_rel/builds/13657) android_n5x_swarming_rel on master.tryserver.chromium.android (JOB_FAILED, ...
3 years, 4 months ago (2017-08-09 22:55:00 UTC) #49
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/2945673002/120001
3 years, 4 months ago (2017-08-09 23:11:48 UTC) #52
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/508986)
3 years, 4 months ago (2017-08-10 02:43:33 UTC) #54
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/2945673002/120001
3 years, 4 months ago (2017-08-10 03:51:53 UTC) #56
commit-bot: I haz the power
Failed to commit the patch.
3 years, 4 months ago (2017-08-10 05:11:00 UTC) #61
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/2945673002/120001
3 years, 4 months ago (2017-08-10 05:57:12 UTC) #63
commit-bot: I haz the power
Committed patchset #7 (id:120001) as https://chromium.googlesource.com/chromium/src/+/5b05b9032e67ea278ae3a3d1eb2731d1dcdb68c5
3 years, 4 months ago (2017-08-10 06:03:21 UTC) #66
jbauman
3 years, 4 months ago (2017-08-14 16:52:15 UTC) #67
Message was sent while issue was closed.
A revert of this CL (patchset #7 id:120001) has been created in
https://codereview.chromium.org/2999923002/ by jbauman@chromium.org.

The reason for reverting is: Caused increase in memory usage (maybe leak) on
media.tough_video_cases_tbmv2

BUG=755136.

Powered by Google App Engine
This is Rietveld 408576698