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

Issue 1401423003: Re-land: ui: Move GLImage::BindTexImage fallback from GLImage implementations to GLES2CmdDecoder. (Closed)

Created:
5 years, 2 months ago by reveman
Modified:
5 years, 2 months ago
CC:
chromium-reviews, darin-cc_chromium.org, ericrk, feature-media-reviews_chromium.org, jam, kalyank, mcasas+watch_chromium.org, ozone-reviews_chromium.org, piman+watch_chromium.org, posciak+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Re-land: ui: Move GLImage::BindTexImage fallback from GLImage implementations to GLES2CmdDecoder. This allows the GPU service to properly track the memory usage image backed textures. It also reduces the complexity of GLImage implementations significantly and makes it easier to support format and buffer types that require a copy or conversion of data to be used for sampling. This change also includes a few minor GLImage cleanups such as removing gfx:: namespace prefix in places where it's not needed and making the CopyTexImage GLImage test not part of the core GLImage tests as it's optional to support that function. BUG=526298 TEST=gl_tests --gtest_filter=GpuMemoryBuffer*, gpu_unittests, gl_unittests --gtest_filter=GLImage* Committed: https://crrev.com/aa9e9d966688a7ef90fb12259b8e70ac7b6648d6 Cr-Commit-Position: refs/heads/master@{#355552}

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : android + mojo fixes #

Patch Set 4 : remove will/diduse/modifyteximage #

Patch Set 5 : build fixes #

Patch Set 6 : build fix #

Patch Set 7 : fix unit tests and avoid unnecessary teximage2d call in decoder #

Total comments: 3

Patch Set 8 : overload getlevelimage #

Patch Set 9 : a few more #

Total comments: 9

Patch Set 10 : address feedback #

Patch Set 11 : stream_texture_android.h too #

Patch Set 12 : stream texture fix #

Patch Set 13 : rebase #

Patch Set 14 : rebase fix #

Total comments: 5

Patch Set 15 : keep sneakily bind the ST texture handle #

Patch Set 16 : Remove NOTREACHED() from GLImageSync::CopyTexImage #

Total comments: 1

Patch Set 17 : fix stream texture issue #

Unified diffs Side-by-side diffs Delta from patch set Stats (+570 lines, -866 lines) Patch
M components/mus/gles2/command_buffer_local.cc View 1 2 3 4 5 6 7 8 9 3 chunks +6 lines, -5 lines 0 comments Download
M content/common/gpu/media/android_deferred_rendering_backing_strategy.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -1 line 0 comments Download
M content/common/gpu/media/avda_codec_image.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -4 lines 0 comments Download
M content/common/gpu/media/avda_codec_image.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 3 chunks +29 lines, -22 lines 0 comments Download
M content/common/gpu/media/gpu_video_decode_accelerator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +4 lines, -2 lines 0 comments Download
M content/common/gpu/stream_texture_android.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +2 lines, -4 lines 0 comments Download
M content/common/gpu/stream_texture_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 5 chunks +32 lines, -4 lines 0 comments Download
M gpu/command_buffer/service/framebuffer_manager.h View 1 2 3 6 chunks +0 lines, -37 lines 0 comments Download
M gpu/command_buffer/service/framebuffer_manager.cc View 1 2 3 6 chunks +0 lines, -47 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 5 6 7 8 9 42 chunks +77 lines, -199 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc View 1 2 3 4 5 6 7 8 9 chunks +39 lines, -60 lines 0 comments Download
M gpu/command_buffer/service/mailbox_manager_sync.cc View 1 2 3 4 5 6 7 2 chunks +4 lines, -4 lines 0 comments Download
M gpu/command_buffer/service/stream_texture_manager_in_process_android.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 6 chunks +44 lines, -14 lines 0 comments Download
M gpu/command_buffer/service/texture_definition.cc View 1 2 3 4 5 6 7 8 10 11 12 13 14 15 5 chunks +11 lines, -24 lines 0 comments Download
M gpu/command_buffer/service/texture_manager.h View 1 2 3 4 5 6 7 8 9 6 chunks +32 lines, -16 lines 0 comments Download
M gpu/command_buffer/service/texture_manager.cc View 1 2 3 4 5 6 7 8 9 8 chunks +30 lines, -33 lines 0 comments Download
M gpu/command_buffer/service/texture_manager_unittest.cc View 1 2 3 4 5 6 7 3 chunks +12 lines, -6 lines 0 comments Download
M ui/gl/BUILD.gn View 1 chunk +1 line, -0 lines 0 comments Download
M ui/gl/gl_image.h View 1 2 3 3 chunks +15 lines, -17 lines 0 comments Download
M ui/gl/gl_image_egl.h View 1 2 3 2 chunks +5 lines, -8 lines 0 comments Download
M ui/gl/gl_image_egl.cc View 3 chunks +10 lines, -5 lines 0 comments Download
M ui/gl/gl_image_glx.h View 1 2 3 2 chunks +5 lines, -8 lines 0 comments Download
M ui/gl/gl_image_glx.cc View 10 chunks +25 lines, -27 lines 0 comments Download
M ui/gl/gl_image_io_surface.h View 1 2 3 3 chunks +10 lines, -13 lines 0 comments Download
M ui/gl/gl_image_io_surface.mm View 8 chunks +18 lines, -10 lines 0 comments Download
M ui/gl/gl_image_memory.h View 1 2 3 2 chunks +2 lines, -27 lines 0 comments Download
M ui/gl/gl_image_memory.cc View 7 chunks +26 lines, -198 lines 0 comments Download
M ui/gl/gl_image_ozone_native_pixmap.h View 1 chunk +1 line, -1 line 0 comments Download
M ui/gl/gl_image_ozone_native_pixmap.cc View 4 chunks +12 lines, -11 lines 0 comments Download
M ui/gl/gl_image_ref_counted_memory.h View 1 chunk +2 lines, -2 lines 0 comments Download
M ui/gl/gl_image_ref_counted_memory.cc View 4 chunks +7 lines, -8 lines 0 comments Download
M ui/gl/gl_image_ref_counted_memory_unittest.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M ui/gl/gl_image_shared_memory.h View 1 chunk +7 lines, -2 lines 0 comments Download
M ui/gl/gl_image_shared_memory.cc View 3 chunks +13 lines, -16 lines 0 comments Download
M ui/gl/gl_image_shared_memory_unittest.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M ui/gl/gl_image_stub.h View 1 2 3 1 chunk +3 lines, -6 lines 0 comments Download
M ui/gl/gl_image_stub.cc View 1 chunk +8 lines, -2 lines 0 comments Download
M ui/gl/gl_image_surface_texture.h View 1 2 3 2 chunks +5 lines, -8 lines 0 comments Download
M ui/gl/gl_image_surface_texture.cc View 3 chunks +10 lines, -5 lines 0 comments Download
M ui/gl/gl_tests.gyp View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M ui/gl/test/gl_image_test_template.h View 1 4 chunks +52 lines, -10 lines 0 comments Download

Messages

Total messages: 70 (26 generated)
reveman
5 years, 2 months ago (2015-10-13 22:05:08 UTC) #2
Daniele Castagna
On 2015/10/13 at 22:05:08, reveman wrote: > Thank you, this will make it much easier ...
5 years, 2 months ago (2015-10-13 22:50:57 UTC) #3
reveman
5 years, 2 months ago (2015-10-14 01:52:36 UTC) #5
Daniele Castagna
GLImage and related code LGTM. I'd probably prefer to pass the service texture id as ...
5 years, 2 months ago (2015-10-14 18:40:36 UTC) #6
reveman
On 2015/10/14 at 18:40:36, dcastagna wrote: > GLImage and related code LGTM. > > I'd ...
5 years, 2 months ago (2015-10-14 19:28:01 UTC) #7
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/160001
5 years, 2 months ago (2015-10-14 19:29:17 UTC) #9
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-14 21:50:04 UTC) #11
no sievers
https://codereview.chromium.org/1401423003/diff/160001/content/common/gpu/stream_texture_android.cc File content/common/gpu/stream_texture_android.cc (right): https://codereview.chromium.org/1401423003/diff/160001/content/common/gpu/stream_texture_android.cc#newcode139 content/common/gpu/stream_texture_android.cc:139: TextureRef* texture = texture_manager->GetTexture(client_texture_id_); What if the original client ...
5 years, 2 months ago (2015-10-15 21:52:44 UTC) #12
reveman
ptal https://codereview.chromium.org/1401423003/diff/160001/content/common/gpu/stream_texture_android.cc File content/common/gpu/stream_texture_android.cc (right): https://codereview.chromium.org/1401423003/diff/160001/content/common/gpu/stream_texture_android.cc#newcode139 content/common/gpu/stream_texture_android.cc:139: TextureRef* texture = texture_manager->GetTexture(client_texture_id_); On 2015/10/15 at 21:52:44, ...
5 years, 2 months ago (2015-10-15 22:56:16 UTC) #13
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/200001
5 years, 2 months ago (2015-10-15 22:56:39 UTC) #15
no sievers
lgtm
5 years, 2 months ago (2015-10-15 23:21:00 UTC) #16
reveman
+fsamuel for components/mus/gles2/ ericrk, fyi
5 years, 2 months ago (2015-10-15 23:31:33 UTC) #18
Fady Samuel
mus lgtm
5 years, 2 months ago (2015-10-15 23:34:36 UTC) #19
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/82785)
5 years, 2 months ago (2015-10-16 01:21:28 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/200001
5 years, 2 months ago (2015-10-16 06:58:00 UTC) #24
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/82952)
5 years, 2 months ago (2015-10-16 09:33:29 UTC) #26
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/200001
5 years, 2 months ago (2015-10-16 20:56:27 UTC) #28
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/83288)
5 years, 2 months ago (2015-10-16 21:44:46 UTC) #30
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/260001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/260001
5 years, 2 months ago (2015-10-19 13:29:00 UTC) #32
reveman
+liberato, fyi I've update the AVDACodecImage code in content/common/gpu/media/ as part of this change. It ...
5 years, 2 months ago (2015-10-19 13:36:10 UTC) #34
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-19 14:13:44 UTC) #36
liberato (no reviews please)
https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc File content/common/gpu/media/avda_codec_image.cc (left): https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc#oldcode87 content/common/gpu/media/avda_codec_image.cc:87: glBindTexture(GL_TEXTURE_EXTERNAL_OES, this still needs to be done, but i ...
5 years, 2 months ago (2015-10-19 16:11:41 UTC) #37
reveman
https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc File content/common/gpu/media/avda_codec_image.cc (left): https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc#oldcode87 content/common/gpu/media/avda_codec_image.cc:87: glBindTexture(GL_TEXTURE_EXTERNAL_OES, On 2015/10/19 at 16:11:41, liberato wrote: > this ...
5 years, 2 months ago (2015-10-19 16:28:17 UTC) #38
liberato (no reviews please)
On 2015/10/19 16:28:17, reveman wrote: > https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc > File content/common/gpu/media/avda_codec_image.cc (left): > > https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc#oldcode87 > ...
5 years, 2 months ago (2015-10-19 16:46:08 UTC) #39
ericrk
https://codereview.chromium.org/1401423003/diff/260001/gpu/command_buffer/service/texture_manager.cc File gpu/command_buffer/service/texture_manager.cc (left): https://codereview.chromium.org/1401423003/diff/260001/gpu/command_buffer/service/texture_manager.cc#oldcode1259 gpu/command_buffer/service/texture_manager.cc:1259: // TODO(ericrk): Images may have complex sizing not accounted ...
5 years, 2 months ago (2015-10-19 17:15:45 UTC) #41
reveman
On 2015/10/19 at 16:46:08, liberato wrote: > On 2015/10/19 16:28:17, reveman wrote: > > https://codereview.chromium.org/1401423003/diff/260001/content/common/gpu/media/avda_codec_image.cc ...
5 years, 2 months ago (2015-10-19 19:12:29 UTC) #42
liberato (no reviews please)
On 2015/10/19 19:12:29, reveman wrote: > On 2015/10/19 at 16:46:08, liberato wrote: > > On ...
5 years, 2 months ago (2015-10-19 19:33:44 UTC) #43
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/280001
5 years, 2 months ago (2015-10-19 19:46:30 UTC) #45
liberato (no reviews please)
On 2015/10/19 19:33:44, liberato wrote: > On 2015/10/19 19:12:29, reveman wrote: > > On 2015/10/19 ...
5 years, 2 months ago (2015-10-19 19:59:52 UTC) #46
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 2 months ago (2015-10-19 20:54:45 UTC) #48
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/280001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/280001
5 years, 2 months ago (2015-10-19 21:24:43 UTC) #51
commit-bot: I haz the power
Committed patchset #15 (id:280001)
5 years, 2 months ago (2015-10-19 21:37:00 UTC) #52
commit-bot: I haz the power
Patchset 15 (id:??) landed as https://crrev.com/ac2696e324bda3824952148f831e76a8b80594b3 Cr-Commit-Position: refs/heads/master@{#354870}
5 years, 2 months ago (2015-10-19 21:37:43 UTC) #53
reveman
A revert of this CL (patchset #15 id:280001) has been created in https://codereview.chromium.org/1418483003/ by reveman@chromium.org. ...
5 years, 2 months ago (2015-10-19 23:36:34 UTC) #54
reveman
Re-landing this after removing the NOTREACHED I added to GLImageSync::CopyTex(Sub)Image from latest patch. That function ...
5 years, 2 months ago (2015-10-20 02:59:50 UTC) #57
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/300001
5 years, 2 months ago (2015-10-20 03:00:00 UTC) #59
commit-bot: I haz the power
Committed patchset #16 (id:300001)
5 years, 2 months ago (2015-10-20 04:04:08 UTC) #60
commit-bot: I haz the power
Failed to apply the patch.
5 years, 2 months ago (2015-10-20 04:04:57 UTC) #61
commit-bot: I haz the power
Patchset 16 (id:??) landed as https://crrev.com/779bd9550a06358ff068edc7458fc8b7b0a69147 Cr-Commit-Position: refs/heads/master@{#354972}
5 years, 2 months ago (2015-10-20 04:05:07 UTC) #62
vasilii
A revert of this CL (patchset #16 id:300001) has been created in https://codereview.chromium.org/1418603002/ by vasilii@chromium.org. ...
5 years, 2 months ago (2015-10-20 08:48:23 UTC) #63
reveman
I was able to reproduce this issue locally and have verified that the latest patch ...
5 years, 2 months ago (2015-10-22 15:28:30 UTC) #65
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1401423003/320001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1401423003/320001
5 years, 2 months ago (2015-10-22 15:29:03 UTC) #68
commit-bot: I haz the power
Committed patchset #17 (id:320001)
5 years, 2 months ago (2015-10-22 16:43:15 UTC) #69
commit-bot: I haz the power
5 years, 2 months ago (2015-10-22 16:44:14 UTC) #70
Message was sent while issue was closed.
Patchset 17 (id:??) landed as
https://crrev.com/aa9e9d966688a7ef90fb12259b8e70ac7b6648d6
Cr-Commit-Position: refs/heads/master@{#355552}

Powered by Google App Engine
This is Rietveld 408576698