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

Issue 795243002: Add TransformFeedback related APIs to command buffer: PART I. (Closed)

Created:
6 years ago by Zhenyao Mo
Modified:
5 years, 11 months ago
Reviewers:
bajones, piman
CC:
chromium-reviews, Ken Russell (switch to Gerrit), piman+watch_chromium.org, no sievers, vmiura
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add TransformFeedback related APIs to command buffer: PART I. glGenTransformFeedbacks glDeleteTransformFeedbacks glIsTransformFeedback glBindTransformFeedback glBeginTransformFeedback glEndTransformFeedback glPauseTransformFeedback glResumeTransformFeedback The missing ones are: glTransformFeedbackVaryings glGetTransformFeedbackVarying Also this CL fixed a bug that's introduced in a previous CL for glIs* handling. Basically the client ID needs to be mapped to the service ID before passing down to the driver. The test is generalized to mask this bug, so this CL fixes both the code and the test behavior. BUG=429051 TEST=gpu_unittests R=bajones@chromium.org NOTRY=true Committed: https://crrev.com/d01af9d9c924bcca8e965a89eb21e6299b2eb3e0 Cr-Commit-Position: refs/heads/master@{#308004}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+1617 lines, -342 lines) Patch
M gpu/GLES2/gl2chromium_autogen.h View 5 chunks +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/build_gles2_cmd_buffer.py View 1 2 15 chunks +63 lines, -7 lines 0 comments Download
M gpu/command_buffer/client/gles2_c_lib_autogen.h View 1 13 chunks +56 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_cmd_helper_autogen.h View 1 8 chunks +72 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.h View 4 chunks +6 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation.cc View 2 chunks +21 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_autogen.h View 1 6 chunks +16 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_impl_autogen.h View 1 7 chunks +107 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_unittest.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_implementation_unittest_autogen.h View 7 chunks +106 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_interface_autogen.h View 1 6 chunks +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_interface_stub_autogen.h View 1 6 chunks +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_interface_stub_impl_autogen.h View 1 6 chunks +21 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_trace_implementation_autogen.h View 1 6 chunks +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/client/gles2_trace_implementation_impl_autogen.h View 1 7 chunks +43 lines, -0 lines 0 comments Download
M gpu/command_buffer/cmd_buffer_functions.txt View 1 5 chunks +8 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_format.h View 1 chunk +1 line, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_format_autogen.h View 1 8 chunks +284 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_format_test_autogen.h View 1 8 chunks +104 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_ids_autogen.h View 1 chunk +242 lines, -234 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils_autogen.h View 1 chunk +2 lines, -0 lines 0 comments Download
M gpu/command_buffer/common/gles2_cmd_utils_implementation_autogen.h View 1 chunk +18 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/context_group.h View 2 chunks +20 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_autogen.h View 1 8 chunks +145 lines, -0 lines 3 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_1_autogen.h View 4 chunks +73 lines, -55 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h View 1 2 8 chunks +118 lines, -46 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_3_autogen.h View 1 chunk +26 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h View 3 chunks +7 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc View 3 chunks +6 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_validation_autogen.h View 1 chunk +2 lines, -0 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h View 2 chunks +16 lines, -0 lines 0 comments Download

Messages

Total messages: 15 (6 generated)
bajones
lgtm
6 years ago (2014-12-11 23:13:39 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/795243002/40001
6 years ago (2014-12-11 23:34:44 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/795243002/40001
6 years ago (2014-12-11 23:56:28 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/795243002/40001
6 years ago (2014-12-12 00:14:05 UTC) #9
commit-bot: I haz the power
Committed patchset #3 (id:40001)
6 years ago (2014-12-12 00:16:09 UTC) #10
commit-bot: I haz the power
Patchset 3 (id:??) landed as https://crrev.com/d01af9d9c924bcca8e965a89eb21e6299b2eb3e0 Cr-Commit-Position: refs/heads/master@{#308004}
6 years ago (2014-12-12 00:17:01 UTC) #11
piman
https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h File gpu/command_buffer/service/gles2_cmd_decoder_autogen.h (right): https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h#newcode122 gpu/command_buffer/service/gles2_cmd_decoder_autogen.h:122: group_->GetTransformFeedbackServiceId(transformfeedback, &transformfeedback); Here is the same as the other ...
5 years, 11 months ago (2015-01-09 07:16:47 UTC) #13
Zhenyao Mo
https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h File gpu/command_buffer/service/gles2_cmd_decoder_autogen.h (right): https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h#newcode122 gpu/command_buffer/service/gles2_cmd_decoder_autogen.h:122: group_->GetTransformFeedbackServiceId(transformfeedback, &transformfeedback); On 2015/01/09 07:16:47, piman (Very slow to ...
5 years, 11 months ago (2015-01-09 17:27:51 UTC) #14
Zhenyao Mo
5 years, 11 months ago (2015-01-09 17:44:41 UTC) #15
Message was sent while issue was closed.
https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/servi...
File gpu/command_buffer/service/gles2_cmd_decoder_autogen.h (right):

https://codereview.chromium.org/795243002/diff/40001/gpu/command_buffer/servi...
gpu/command_buffer/service/gles2_cmd_decoder_autogen.h:122:
group_->GetTransformFeedbackServiceId(transformfeedback, &transformfeedback);
On 2015/01/09 17:27:51, Zhenyao Mo wrote:
> On 2015/01/09 07:16:47, piman (Very slow to review) wrote:
> > Here is the same as the other CLs. It ignores the case where the client id
is
> > not in the map (GL_INVALID_OPERATION should be raised).
> 
> My understanding is that our client IDs and service IDs are in different
range,
> so if the client ID is invalid and we fail to map to a valid service ID here,
> the client ID will be passed down to ANGLE, where a GL error will be
generated. 
> That's why I didn't do any error handling here.
> 
> If my understanding is incorrect, then yes, we need to check the return of
this
> Get*Id function and generate an error on false.

Actually you are right. I just double checked the client id generators, and
there is no guarantee that a client ID and a service ID may not collide. I got
the wrong impression that client IDs are in a different range.  Will add the
error check in a separate CL as it affects several other commands also.

Powered by Google App Engine
This is Rietveld 408576698