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

Issue 213743003: Pass GL context bind_generates_resources flag to GPU Service. (Closed)

Created:
6 years, 8 months ago by vmiura
Modified:
6 years, 8 months ago
CC:
chromium-reviews, jam, sievers+watch_chromium.org, jbauman+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

Pass GL context bind_generates_resources flag to GPU Service. GPU Client has been respecting the bind_generates_resources attrib, however the GPU Service has been forcing it to always 'true'. This means glBind semantic validation has been incorrect when bind_generates_resources is 'false' on the Client. This patch passes the bind_generates_resources attrib for WebGraphicsContext3DCommandBufferImpl, and checks that all contexts in the same ContextGroup use the same setting. BUG=333063, 244968 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=261563

Patch Set 1 #

Patch Set 2 : Fix component build link error. #

Total comments: 4

Patch Set 3 : Removed useless comment. #

Patch Set 4 : Fail GLES2Implementation::Initialize on bind_generates_resource between Client & Service. #

Total comments: 2

Patch Set 5 : Remove bind_generates_resources parameter from WebGraphicsContext3DCommandBufferImpl. #

Patch Set 6 : Remove bind_generates_resource in Android call sites. #

Patch Set 7 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+105 lines, -43 lines) Patch
M content/browser/compositor/gpu_process_transport_factory.cc View 1 2 3 4 5 6 2 chunks +0 lines, -2 lines 0 comments Download
M content/browser/renderer_host/compositor_impl_android.cc View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M content/browser/renderer_host/image_transport_factory_android.cc View 1 2 3 4 5 1 chunk +0 lines, -2 lines 0 comments Download
M content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.h View 1 2 3 4 2 chunks +0 lines, -2 lines 0 comments Download
M content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc View 1 2 3 4 5 chunks +4 lines, -5 lines 0 comments Download
M content/common/gpu/gpu_command_buffer_stub.cc View 1 2 3 4 5 6 2 chunks +7 lines, -1 line 0 comments Download
M content/content_common.gypi View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/render_widget.cc View 1 2 3 4 5 6 2 chunks +0 lines, -2 lines 0 comments Download
M gpu/GLES2/gl2extchromium.h View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M gpu/command_buffer/build_gles2_cmd_buffer.py View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.h View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.cc View 1 2 3 4 5 6 3 chunks +13 lines, -2 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_unittest.cc View 1 2 3 11 chunks +59 lines, -25 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils.cc View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 5 6 1 chunk +6 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M ui/gl/gl_bindings.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 18 (0 generated)
vmiura
PTAL.
6 years, 8 months ago (2014-04-01 21:10:01 UTC) #1
danakj
Can we unit-test this?
6 years, 8 months ago (2014-04-01 21:18:34 UTC) #2
Ken Russell (switch to Gerrit)
I agree with Dana's comment about unit testing this change. It's a subtle change and ...
6 years, 8 months ago (2014-04-01 21:29:38 UTC) #3
piman
LGTM modulo tests. I did make a cursory pass over the places we create contexts ...
6 years, 8 months ago (2014-04-01 22:18:11 UTC) #4
vmiura
On 2014/04/01 21:29:38, Ken Russell wrote: > I agree with Dana's comment about unit testing ...
6 years, 8 months ago (2014-04-01 22:21:49 UTC) #5
danakj
On Tue, Apr 1, 2014 at 6:21 PM, <vmiura@chromium.org> wrote: > On 2014/04/01 21:29:38, Ken ...
6 years, 8 months ago (2014-04-01 22:30:39 UTC) #6
vmiura
https://codereview.chromium.org/213743003/diff/20001/content/common/gpu/gpu_command_buffer_stub.cc File content/common/gpu/gpu_command_buffer_stub.cc (right): https://codereview.chromium.org/213743003/diff/20001/content/common/gpu/gpu_command_buffer_stub.cc#newcode149 content/common/gpu/gpu_command_buffer_stub.cc:149: attrib_parser.bind_generates_resource_); On 2014/04/01 21:29:38, Ken Russell wrote: > How ...
6 years, 8 months ago (2014-04-01 22:32:06 UTC) #7
vmiura
PTAL. I've added a GL_BIND_GENERATES_RESOURCE_CHROMIUM state that the client can query. GLES2Implementation::Initialize fails if client ...
6 years, 8 months ago (2014-04-02 22:12:31 UTC) #8
piman
https://codereview.chromium.org/213743003/diff/100001/content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc File content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc (right): https://codereview.chromium.org/213743003/diff/100001/content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc#newcode358 content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc:358: attribs.push_back(bind_generates_resources_ ? 1 : 0); nit: how about removing ...
6 years, 8 months ago (2014-04-02 22:23:00 UTC) #9
vmiura
https://codereview.chromium.org/213743003/diff/100001/content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc File content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc (right): https://codereview.chromium.org/213743003/diff/100001/content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc#newcode358 content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.cc:358: attribs.push_back(bind_generates_resources_ ? 1 : 0); On 2014/04/02 22:23:00, piman ...
6 years, 8 months ago (2014-04-02 22:44:24 UTC) #10
piman
Awesome, LGTM!
6 years, 8 months ago (2014-04-02 23:25:49 UTC) #11
vmiura
The CQ bit was checked by vmiura@chromium.org
6 years, 8 months ago (2014-04-03 14:38:30 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmiura@chromium.org/213743003/130001
6 years, 8 months ago (2014-04-03 14:39:26 UTC) #13
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 8 months ago (2014-04-03 18:25:48 UTC) #14
commit-bot: I haz the power
Failed to apply patch for content/common/gpu/gpu_command_buffer_stub.cc: While running patch -p1 --forward --force --no-backup-if-mismatch; patching file ...
6 years, 8 months ago (2014-04-03 18:25:48 UTC) #15
vmiura
The CQ bit was checked by vmiura@chromium.org
6 years, 8 months ago (2014-04-03 20:17:23 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/vmiura@chromium.org/213743003/150001
6 years, 8 months ago (2014-04-03 20:20:34 UTC) #17
commit-bot: I haz the power
6 years, 8 months ago (2014-04-03 23:00:53 UTC) #18
Message was sent while issue was closed.
Change committed as 261563

Powered by Google App Engine
This is Rietveld 408576698