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

Issue 2655073008: [gpu/GLES2DecoderImpl] Force updating scissor state on Nexus 7 gen.2 (Closed)

Created:
3 years, 10 months ago by trchen
Modified:
3 years, 10 months ago
Reviewers:
Zhenyao Mo, brianderson
CC:
chromium-reviews, piman+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[gpu/GLES2DecoderImpl] Force updating scissor state on Nexus 7 gen.2 Nexus 7 gen.2 shipped with some buggy GPU driver that can have stale scissor state after switching current framebuffer to FBO0. The theory is that FBO0 keeps some internal (in HW regs maybe?) scissor test state, but the driver forgets to update it with GL_SCISSOR_TEST when FBO0 gets bound. (So it stuck with whatever state we last switched from it.) Also the state could stuck even if we explicitly set GL_SCISSOR_TEST again after switching to FBO0, because the driver early exits if the new GL_SCISSOR_TEST value matches the old one. This CL add a workaround in GLES2DecoderImpl to shake up the scissor state whenever we just switched to FBO0. BUG=670607 CQ_INCLUDE_TRYBOTS=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/2655073008 Cr-Commit-Position: refs/heads/master@{#446894} Committed: https://chromium.googlesource.com/chromium/src/+/1870af92713b4c2eefd45312b7cf9c5c18477f59

Patch Set 1 #

Total comments: 1

Patch Set 2 : fix nits #

Unified diffs Side-by-side diffs Delta from patch set Stats (+41 lines, -7 lines) Patch
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 4 chunks +28 lines, -6 lines 0 comments Download
M gpu/config/gpu_driver_bug_list_json.cc View 2 chunks +11 lines, -1 line 0 comments Download
M gpu/config/gpu_driver_bug_workaround_type.h View 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 19 (12 generated)
trchen
3 years, 10 months ago (2017-01-27 07:39:24 UTC) #3
brianderson
Nice! Only have one nit. https://codereview.chromium.org/2655073008/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc File gpu/command_buffer/service/gles2_cmd_decoder.cc (right): https://codereview.chromium.org/2655073008/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc#newcode5638 gpu/command_buffer/service/gles2_cmd_decoder.cc:5638: !GetBoundDrawFramebufferServiceId()) { ...Id() == ...
3 years, 10 months ago (2017-01-27 08:07:57 UTC) #6
Zhenyao Mo
On 2017/01/27 08:07:57, brianderson wrote: > Nice! Only have one nit. > > https://codereview.chromium.org/2655073008/diff/1/gpu/command_buffer/service/gles2_cmd_decoder.cc > ...
3 years, 10 months ago (2017-01-27 18:39:52 UTC) #9
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/2655073008/20001
3 years, 10 months ago (2017-01-27 21:42:25 UTC) #12
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/222301)
3 years, 10 months ago (2017-01-27 23:18:27 UTC) #14
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/2655073008/20001
3 years, 10 months ago (2017-01-28 02:20:58 UTC) #16
commit-bot: I haz the power
3 years, 10 months ago (2017-01-28 03:12:55 UTC) #19
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/chromium/src/+/1870af92713b4c2eefd45312b7cf...

Powered by Google App Engine
This is Rietveld 408576698