New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 599964 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Email to this user bounced
Closed: May 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Feature



Sign in to add a comment

Extract workarounds only one time from the command-line in the GPU process

Project Member Reported by j.iso...@samsung.com, Apr 1 2016

Issue description

Version: m51
OS: All

Currently the extraction of the gpu driver bug workarounds from the command-line is done in FeatureInfo's constructor. Since a new FeatureInfo is created for each ContextGroup this extraction is done multiple time whereas the result is constant.

This could be optimized by doing it only one time, for example in GpuChannelManager's constructor.

Note that currently feature_info()->workarounds() is called in a lot of places including some unit tests. So maybe FeatureInfo will still keep a copy of the workarounds but the generation will be done by GpuChannelManager, so only once.
 
Summary: Extract workarounds only one time from the command-line in the GPU process (was: Extract workarounds from the command-line only time in the GPU process)
Cc: -plamer@chromium.org kbr@chromium.org zmo@chromium.org
I suggested this CL https://codereview.chromium.org/1871613002/
Project Member

Comment 3 by bugdroid1@chromium.org, Apr 15 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dab49af5278797db0a8374f2a7f06c6c33b8158b

commit dab49af5278797db0a8374f2a7f06c6c33b8158b
Author: j.isorce <j.isorce@samsung.com>
Date: Fri Apr 15 10:26:02 2016

Compute GpuDriverBugWorkarounds only one time in the GPU process

Previously the extraction of "--gpu-driver-bug-workarounds" from the
command-line was done in FeatureInfo's constructor. Since a new FeatureInfo
is created for each ContextGroup this extraction was done again whereas
the result is constant.

This CL moved owner ship of Workarounds from FeatureInfo to
InProcessCommandBuffer when running in gpu process mode. But moved
to GpuChannelManager otherwise.

class GpuDriverBugWorkarounds has been added within new files
gpu_driver_bug_workarounds.h/.cc.

BUG= 599964 

R=kbr@chromium.org, piman@chromium.org, rjkroege@chromium.org, zmo@chromium.org
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

Review URL: https://codereview.chromium.org/1871613002

Cr-Commit-Position: refs/heads/master@{#387569}

[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/components/mus/gles2/command_buffer_driver.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/components/mus/gles2/gpu_state.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/components/mus/gles2/gpu_state.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/buffer_manager_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/context_group.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/context_group_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/feature_info.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/feature_info.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/feature_info_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/in_process_command_buffer.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/in_process_command_buffer.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/texture_manager.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/service/texture_manager_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/es3_misc_functions_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_cube_map_texture_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_ext_blend_func_extended_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_manager.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_manager.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_request_extension_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/command_buffer/tests/gl_unittest.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/config/BUILD.gn
[add] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/config/gpu_driver_bug_workarounds.cc
[add] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/config/gpu_driver_bug_workarounds.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/gpu_config.gypi
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/ipc/service/BUILD.gn
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/ipc/service/gpu_channel.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/ipc/service/gpu_channel_manager.cc
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/ipc/service/gpu_channel_manager.h
[modify] https://crrev.com/dab49af5278797db0a8374f2a7f06c6c33b8158b/gpu/ipc/service/gpu_command_buffer_stub.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Apr 15 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2fcc0be68453b91ac58cfb05e91265d1323ce642

commit 2fcc0be68453b91ac58cfb05e91265d1323ce642
Author: cwallez <cwallez@chromium.org>
Date: Fri Apr 15 13:29:34 2016

Revert of Compute GpuDriverBugWorkarounds only one time in the GPU process (patchset #16 id:300001 of https://codereview.chromium.org/1871613002/ )

Reason for revert:
This commit breaks the gles2_conform tests on all the GPU FYI Linux and Mac bots, see https://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28New%20Intel%29/builds/758/steps/gles2_conform_test/logs/stdio

Original issue's description:
> Compute GpuDriverBugWorkarounds only one time in the GPU process
>
> Previously the extraction of "--gpu-driver-bug-workarounds" from the
> command-line was done in FeatureInfo's constructor. Since a new FeatureInfo
> is created for each ContextGroup this extraction was done again whereas
> the result is constant.
>
> This CL moved owner ship of Workarounds from FeatureInfo to
> InProcessCommandBuffer when running in gpu process mode. But moved
> to GpuChannelManager otherwise.
>
> class GpuDriverBugWorkarounds has been added within new files
> gpu_driver_bug_workarounds.h/.cc.
>
> BUG= 599964 
>
> R=kbr@chromium.org, piman@chromium.org, rjkroege@chromium.org, zmo@chromium.org
> 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/dab49af5278797db0a8374f2a7f06c6c33b8158b
> Cr-Commit-Position: refs/heads/master@{#387569}

TBR=kbr@chromium.org,piman@chromium.org,rjkroege@chromium.org,zmo@chromium.org,ben@chromium.org,cpu@chromium.org,j.isorce@samsung.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 599964 

Review URL: https://codereview.chromium.org/1892483004

Cr-Commit-Position: refs/heads/master@{#387588}

[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/components/mus/gles2/command_buffer_driver.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/components/mus/gles2/gpu_state.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/components/mus/gles2/gpu_state.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/buffer_manager_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/context_group.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/context_group_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/feature_info.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/feature_info.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/feature_info_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/in_process_command_buffer.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/in_process_command_buffer.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/texture_manager.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/service/texture_manager_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/es3_misc_functions_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_cube_map_texture_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_ext_blend_func_extended_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_manager.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_manager.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_request_extension_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/command_buffer/tests/gl_unittest.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/config/BUILD.gn
[delete] https://crrev.com/0c1cff9f04f8884ff43d6be2ee003618c80a9db5/gpu/config/gpu_driver_bug_workarounds.cc
[delete] https://crrev.com/0c1cff9f04f8884ff43d6be2ee003618c80a9db5/gpu/config/gpu_driver_bug_workarounds.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/gpu_config.gypi
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/ipc/service/BUILD.gn
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/ipc/service/gpu_channel.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/ipc/service/gpu_channel_manager.cc
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/ipc/service/gpu_channel_manager.h
[modify] https://crrev.com/2fcc0be68453b91ac58cfb05e91265d1323ce642/gpu/ipc/service/gpu_command_buffer_stub.cc

Project Member

Comment 5 by bugdroid1@chromium.org, Apr 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/57b96c478dda56160c512fd85ee4e0f7437b524d

commit 57b96c478dda56160c512fd85ee4e0f7437b524d
Author: j.isorce <j.isorce@samsung.com>
Date: Mon Apr 18 14:11:29 2016

Compute GpuDriverBugWorkarounds only one time in the GPU process

Previously the extraction of "--gpu-driver-bug-workarounds" from the
command-line was done in FeatureInfo's constructor. Since a new FeatureInfo
is created for each ContextGroup this extraction was done again whereas
the result is constant.

This CL moved owner ship of Workarounds from FeatureInfo to
InProcessCommandBuffer when running in gpu process mode. But moved
to GpuChannelManager otherwise.

class GpuDriverBugWorkarounds has been added within new files
gpu_driver_bug_workarounds.h/.cc.

BUG= 599964 

R=kbr@chromium.org, piman@chromium.org, rjkroege@chromium.org, zmo@chromium.org
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/dab49af5278797db0a8374f2a7f06c6c33b8158b
Cr-Commit-Position: refs/heads/master@{#387569}

Review URL: https://codereview.chromium.org/1871613002

Cr-Commit-Position: refs/heads/master@{#387899}

[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/components/mus/gles2/command_buffer_driver.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/components/mus/gles2/gpu_state.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/components/mus/gles2/gpu_state.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/buffer_manager_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/context_group.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/context_group_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/feature_info.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/feature_info.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/feature_info_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/in_process_command_buffer.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/in_process_command_buffer.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/texture_manager.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/service/texture_manager_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/es3_misc_functions_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_cube_map_texture_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_ext_blend_func_extended_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_manager.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_manager.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_request_extension_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/command_buffer/tests/gl_unittest.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/config/BUILD.gn
[add] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/config/gpu_driver_bug_workarounds.cc
[add] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/config/gpu_driver_bug_workarounds.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/gles2_conform_support/egl/context.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/gles2_conform_support/egl/display.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/gles2_conform_support/egl/display.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/gpu_config.gypi
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/ipc/service/BUILD.gn
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/ipc/service/gpu_channel.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/ipc/service/gpu_channel_manager.cc
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/ipc/service/gpu_channel_manager.h
[modify] https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d/gpu/ipc/service/gpu_command_buffer_stub.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Apr 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9a9fe17c2f03b611b2fa93582c53eda799302150

commit 9a9fe17c2f03b611b2fa93582c53eda799302150
Author: zmo <zmo@chromium.org>
Date: Mon Apr 18 17:28:45 2016

Revert of Compute GpuDriverBugWorkarounds only one time in the GPU process (patchset #20 id:370001 of https://codereview.chromium.org/1871613002/ )

Reason for revert:
Sorry, but I have to revert this one before I can revert https://codereview.chromium.org/1714883002/ due to display.h and display.cc conflicts.

Feel free to reland after rebasing and testing it out carefully.

Original issue's description:
> Compute GpuDriverBugWorkarounds only one time in the GPU process
>
> Previously the extraction of "--gpu-driver-bug-workarounds" from the
> command-line was done in FeatureInfo's constructor. Since a new FeatureInfo
> is created for each ContextGroup this extraction was done again whereas
> the result is constant.
>
> This CL moved owner ship of Workarounds from FeatureInfo to
> InProcessCommandBuffer when running in gpu process mode. But moved
> to GpuChannelManager otherwise.
>
> class GpuDriverBugWorkarounds has been added within new files
> gpu_driver_bug_workarounds.h/.cc.
>
> BUG= 599964 
>
> R=kbr@chromium.org, piman@chromium.org, rjkroege@chromium.org, zmo@chromium.org
> 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/dab49af5278797db0a8374f2a7f06c6c33b8158b
> Cr-Commit-Position: refs/heads/master@{#387569}
>
> Committed: https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d
> Cr-Commit-Position: refs/heads/master@{#387899}

TBR=kbr@chromium.org,piman@chromium.org,rjkroege@chromium.org,ben@chromium.org,cpu@chromium.org,j.isorce@samsung.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 599964 

Review URL: https://codereview.chromium.org/1902453002

Cr-Commit-Position: refs/heads/master@{#387940}

[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/components/mus/gles2/command_buffer_driver.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/components/mus/gles2/gpu_state.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/components/mus/gles2/gpu_state.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/buffer_manager_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/context_group.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/context_group_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/feature_info.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/feature_info.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/feature_info_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/in_process_command_buffer.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/in_process_command_buffer.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/texture_manager.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/service/texture_manager_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/es3_misc_functions_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_cube_map_texture_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_ext_blend_func_extended_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_manager.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_manager.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_request_extension_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/command_buffer/tests/gl_unittest.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/config/BUILD.gn
[delete] https://crrev.com/2d7f454406379fbf4e9221ff5328f4d364d754ca/gpu/config/gpu_driver_bug_workarounds.cc
[delete] https://crrev.com/2d7f454406379fbf4e9221ff5328f4d364d754ca/gpu/config/gpu_driver_bug_workarounds.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/gles2_conform_support/egl/context.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/gles2_conform_support/egl/display.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/gles2_conform_support/egl/display.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/gpu_config.gypi
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/ipc/service/BUILD.gn
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/ipc/service/gpu_channel.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/ipc/service/gpu_channel_manager.cc
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/ipc/service/gpu_channel_manager.h
[modify] https://crrev.com/9a9fe17c2f03b611b2fa93582c53eda799302150/gpu/ipc/service/gpu_command_buffer_stub.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Apr 19 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/265b2e56348b55fa622275e67a9863ad588f5183

commit 265b2e56348b55fa622275e67a9863ad588f5183
Author: j.isorce <j.isorce@samsung.com>
Date: Tue Apr 19 07:40:02 2016

Compute GpuDriverBugWorkarounds only one time in the GPU process

Previously the extraction of "--gpu-driver-bug-workarounds" from the
command-line was done in FeatureInfo's constructor. Since a new FeatureInfo
is created for each ContextGroup this extraction was done again whereas
the result is constant.

This CL moved owner ship of Workarounds from FeatureInfo to
InProcessCommandBuffer when running in gpu process mode. But moved
to GpuChannelManager otherwise.

class GpuDriverBugWorkarounds has been added within new files
gpu_driver_bug_workarounds.h/.cc.

BUG= 599964 

R=kbr@chromium.org, piman@chromium.org, rjkroege@chromium.org, zmo@chromium.org
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/dab49af5278797db0a8374f2a7f06c6c33b8158b
Cr-Commit-Position: refs/heads/master@{#387569}

Committed: https://crrev.com/57b96c478dda56160c512fd85ee4e0f7437b524d
Cr-Commit-Position: refs/heads/master@{#387899}

Review URL: https://codereview.chromium.org/1871613002

Cr-Commit-Position: refs/heads/master@{#388157}

[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/components/mus/gles2/command_buffer_driver.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/components/mus/gles2/gpu_state.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/components/mus/gles2/gpu_state.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/buffer_manager_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/context_group.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/context_group_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/feature_info.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/feature_info.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/feature_info_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/in_process_command_buffer.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/in_process_command_buffer.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/texture_manager.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/service/texture_manager_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/es3_misc_functions_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_copy_tex_image_2d_workaround_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_cube_map_texture_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_ext_blend_func_extended_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_iosurface_readback_workaround_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_manager.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_manager.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_request_extension_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/command_buffer/tests/gl_unittest.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/config/BUILD.gn
[add] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/config/gpu_driver_bug_workarounds.cc
[add] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/config/gpu_driver_bug_workarounds.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/gles2_conform_support/egl/display.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/gles2_conform_support/egl/display.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/gpu_config.gypi
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/ipc/service/BUILD.gn
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/ipc/service/gpu_channel.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/ipc/service/gpu_channel_manager.cc
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/ipc/service/gpu_channel_manager.h
[modify] https://crrev.com/265b2e56348b55fa622275e67a9863ad588f5183/gpu/ipc/service/gpu_command_buffer_stub.cc

Owner: j.iso...@samsung.com
Status: Fixed (was: Assigned)

Sign in to add a comment