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

Issue 644669 link

Starred by 3 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug

Blocked on:
issue 645280

Blocking:
issue 295792
issue 619264



Sign in to add a comment

deqp/functional/gles3/shaderloop_for/while.html fails on Intel Mac

Project Member Reported by qiankun....@intel.com, Sep 7 2016

Issue description

What steps will reproduce the problem?
(1) open chrome with command line: --enable-unsafe-es3-apis on Mac with an Intel integrated graphics card.
(2) Open https://www.khronos.org/registry/webgl/sdk/tests/deqp/functional/gles3/shaderloop_for.html?webglVersion=2 or https://www.khronos.org/registry/webgl/sdk/tests/deqp/functional/gles3/shaderloop_while.html?webglVersion=2

What is the expected output?
All tests should pass.

What do you see instead?
Some tests fail.

The root cause of the failure is condition calculation in for and while loops has bug on Intel Mac. It can be worked around by rewriting shader in ANGLE.
 

Comment 1 by kbr@chromium.org, Sep 7 2016

Out of curiosity are these bugs being filed with Intel (or Apple) so that the macOS driver may be fixed at some point?

Comment 2 by kbr@chromium.org, Sep 15 2016

See also Issue 647089, in which deqp/functional/gles3/shaderloop_do_while.html appears to be crashing the WindowServer on Mac Minis with Intel GPUs running macOS 10.10.

The do-while hang might should be caused by the bug that is worked around by SH_REWRITE_DO_WHILE_LOOPS. It fixed itself in 10.11. My bad, I forgot to add the workaround in Chrome and will do shortly.

I think Qiankun's report is for something different though.
Project Member

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

The following revision refers to this bug:
  https://chromium.googlesource.com/angle/angle/+/09cfac606ef5ca64cb657fd03cbc110a44c34fe6

commit 09cfac606ef5ca64cb657fd03cbc110a44c34fe6
Author: Qiankun Miao <qiankun.miao@intel.com>
Date: Tue Sep 06 09:25:16 2016

Work around For and While loop bugs on Intel Mac OSX

Condition calculation in for and while loops has bug on Intel Mac. Work
around it by converting "CONDITION" to "CONDITION && true".

This CL also adds previous SH_EMULATE_ABS_INT_FUNCTION workaround to
the ANGLE GL back-end on OSX

BUG=chromium:644669
TEST=deqp/functional/gles3/shaderloop_for/while.html

Change-Id: I910f662b054f259fcb601b9938841b3a2d066840
Reviewed-on: https://chromium-review.googlesource.com/381678
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Qiankun Miao <qiankun.miao@intel.com>
Commit-Queue: Corentin Wallez <cwallez@chromium.org>

[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/include/GLSLANG/ShaderLang.h
[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/compiler/translator/Compiler.cpp
[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/libANGLE/renderer/gl/ShaderGL.cpp
[add] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/compiler/translator/AddAndTrueToLoopCondition.h
[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/compiler.gypi
[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/libANGLE/renderer/gl/renderergl_utils.cpp
[add] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/compiler/translator/AddAndTrueToLoopCondition.cpp
[modify] https://crrev.com/09cfac606ef5ca64cb657fd03cbc110a44c34fe6/src/libANGLE/renderer/gl/WorkaroundsGL.h

Comment 5 by kbr@chromium.org, Sep 15 2016

Thanks Corentin. Appreciate your help seeing whether your workaround helps with the do-while hang. Based on your assessment I agree they're different bugs.

Project Member

Comment 6 by bugdroid1@chromium.org, Sep 15 2016

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

commit 2a729fd99f3c809706f54008ccc640b4dfc40a92
Author: geofflang <geofflang@chromium.org>
Date: Thu Sep 15 20:07:52 2016

Roll ANGLE 7ebb97f..09cfac6

https://chromium.googlesource.com/angle/angle.git/+log/7ebb97f..09cfac6

BUG=,chromium:644669

TBR=jmadill@chromium.org

TEST=bots

CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel

Review-Url: https://codereview.chromium.org/2346913002
Cr-Commit-Position: refs/heads/master@{#418945}

[modify] https://crrev.com/2a729fd99f3c809706f54008ccc640b4dfc40a92/DEPS

Project Member

Comment 7 by bugdroid1@chromium.org, Sep 16 2016

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

commit 626d9576addcbc392fefbf02fdec0d822d782ae1
Author: qiankun.miao <qiankun.miao@intel.com>
Date: Fri Sep 16 00:40:25 2016

Enable ANGLE workaround for For and While loops bug on Intel MacOSX

BUG=644669
TEST=deqp/functional/gles3/shaderloop_for/while.html
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/2319023002
Cr-Commit-Position: refs/heads/master@{#419059}

[modify] https://crrev.com/626d9576addcbc392fefbf02fdec0d822d782ae1/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/626d9576addcbc392fefbf02fdec0d822d782ae1/gpu/config/gpu_driver_bug_list_json.cc
[modify] https://crrev.com/626d9576addcbc392fefbf02fdec0d822d782ae1/gpu/config/gpu_driver_bug_workaround_type.h

Project Member

Comment 8 by bugdroid1@chromium.org, Sep 16 2016

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

commit d4d44f9ccbce0cd089a3066c438952863921cd40
Author: cwallez <cwallez@chromium.org>
Date: Fri Sep 16 15:10:41 2016

gpu/config: Add workaround rewrite do-while on Mac < 10.11

BUG=644669
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/2343863003
Cr-Commit-Position: refs/heads/master@{#419171}

[modify] https://crrev.com/d4d44f9ccbce0cd089a3066c438952863921cd40/gpu/command_buffer/service/gles2_cmd_decoder.cc
[modify] https://crrev.com/d4d44f9ccbce0cd089a3066c438952863921cd40/gpu/config/gpu_driver_bug_list_json.cc
[modify] https://crrev.com/d4d44f9ccbce0cd089a3066c438952863921cd40/gpu/config/gpu_driver_bug_workaround_type.h

Comment 9 by kbr@chromium.org, Sep 16 2016

Blocking: 619264

Comment 10 by kbr@chromium.org, Sep 16 2016

Blocking: 645280
This bug should be fixed now. I don't have permission to  bug 645280 .

Comment 12 by kbr@chromium.org, Sep 17 2016

Sorry,  Issue 645280  is a build infrastructure problem (Google only) in which some forms of test failures are taking our bots offline. Here's an example of such a task which did this:
https://chromium-swarm.appspot.com/user/task/3146977600a55010

Note the WindowServer apparently crashing at the end, and the -15 exit code of the process, indicating SIGTERM. Apparently the harness that these bots run isn't robust to this.

Comment 13 by zmo@chromium.org, Nov 5 2016

Status: Fixed (was: Assigned)

Comment 14 by zmo@chromium.org, Feb 15 2017

Qiankun: Apple just closed radar saying they can't reproduce it. In the report, we asked them to run chrome without the workaround (/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --enable-unsafe-es3-apis --add_and_true_to_loop_conditon=0)

Can you try again and see if you can still reproduce this on the said hardware.

Comment 15 by zmo@chromium.org, Mar 7 2017

Labels: -Pri-3 Pri-2
Status: Assigned (was: Fixed)
Qiankun: ping.
Sorry for missing this bug before. I tested this bug on the reported hardware with Mac 10.12.4 and Mac 10.12.2. The bug still existed. With --add_and_true_to_loop_conditon=0, the tests failed as before.

Comment 17 by zmo@chromium.org, Mar 7 2017

Thank you.  I've updated the Apple radar: 28902101
Project Member

Comment 18 by sheriffbot@chromium.org, Jun 7 2017

Labels: Hotlist-Recharge-BouncingOwner
Owner: ----
Status: Untriaged (was: Assigned)
The assigned owner "qiankun.miao@intel.com" is not able to receive e-mails, please re-triage.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 19 by kbr@chromium.org, Jun 7 2017

Cc: qkmiao@chromium.org
Status: Available (was: Untriaged)

Comment 20 by kbr@chromium.org, Nov 21 2017

Blocking: -645280

Comment 21 by kbr@chromium.org, Nov 21 2017

Blockedon: 645280
Project Member

Comment 23 by bugdroid1@chromium.org, Aug 22

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

commit 5c5f556a079770fe90ebfdd576cb2f1d3fbc3a29
Author: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Wed Aug 22 16:51:17 2018

Roll src/third_party/skia ea60b951d735..e6ab998bc2e6 (21 commits)

https://skia.googlesource.com/skia.git/+log/ea60b951d735..e6ab998bc2e6


git log ea60b951d735..e6ab998bc2e6 --date=short --no-merges --format='%ad %ae %s'
2018-08-22 egdaniel@google.com Revert "added support for sk_Dimensions to SkSL"
2018-08-22 nigeltao@google.com Update SkCodec::rewindIfNeeded comment
2018-08-22 angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com Roll third_party/externals/angle2 70aeda4942f5..44ae899ae9ce (3 commits)
2018-08-22 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-08-22 angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com Roll third_party/externals/angle2 d710fee3861a..70aeda4942f5 (5 commits)
2018-08-21 mtklein@google.com let's like, chill out about all these rules, man
2018-08-21 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-08-21 herb@google.com Rename SkGlyphRunListDrawer to SkGlyphRunListPainter
2018-08-21 enne@chromium.org Add add_and_true_to_loop_condition workaround
2018-08-21 fmalita@chromium.org [skottie] Split-up Skottie.cpp
2018-08-21 herb@google.com Use SkGlyphRun directly in SkRemoteGlyphCache
2018-08-21 robertphillips@google.com Address fuzzer issue
2018-08-21 kjlubick@google.com Update Pixels to Android P
2018-08-21 egdaniel@google.com Disable FB Fetch in metal ios
2018-08-21 fmalita@chromium.org [skottie/cleanup] Refactor parser state handling
2018-08-21 angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com Roll third_party/externals/angle2 7a4f6b8c7d5e..d710fee3861a (2 commits)
2018-08-21 herb@google.com Check for too small rect for path
2018-08-21 ethannicholas@google.com added support for sk_Dimensions to SkSL
2018-08-21 mtklein@google.com treat opaque dsts as src alpha type
2018-08-21 bsalomon@google.com Fix op chaining painter's order violation in GrRenderTargetOpList.
2018-08-21 herb@google.com Fix possible nullptr deref


Created with:
  gclient setdep -r src/third_party/skia@e6ab998bc2e6

The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG=chromium: 644669,chromium:829614,chromium:873020,chromium:873020
TBR=fmalita@chromium.org

Change-Id: I4dc802075c67741f2c6db2225eb9e6d3772cd618
Reviewed-on: https://chromium-review.googlesource.com/1185061
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#585088}
[modify] https://crrev.com/5c5f556a079770fe90ebfdd576cb2f1d3fbc3a29/DEPS

Project Member

Comment 25 by bugdroid1@chromium.org, Aug 23

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

commit ae2eaa7c0800c2128bbb6c910024478ebaa1a672
Author: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Thu Aug 23 03:35:30 2018

Roll src/third_party/skia 33d5394d08f6..9ac87d4472f6 (7 commits)

https://skia.googlesource.com/skia.git/+log/33d5394d08f6..9ac87d4472f6


git log 33d5394d08f6..9ac87d4472f6 --date=short --no-merges --format='%ad %ae %s'
2018-08-23 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-08-23 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-08-23 recipe-roller@chromium.org Roll recipe dependencies (trivial).
2018-08-22 enne@chromium.org Add disable_texture_storage workaround
2018-08-22 enne@chromium.org Add remove_pow_with_constant_exponent workaround
2018-08-22 enne@chromium.org Add rewrite_do_while_loops workaround
2018-08-22 mtklein@google.com also set Wno-implicit-fallthrough for Android


Created with:
  gclient setdep -r src/third_party/skia@9ac87d4472f6

The AutoRoll server is located here: https://autoroll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG=chromium: 521904,chromium:829614,chromium: 477306,chromium:829614,chromium: 644669,chromium:829614
TBR=fmalita@chromium.org

Change-Id: I150b8ac88e7c5dfcb6eefc7bfe4bd50c08180f69
Reviewed-on: https://chromium-review.googlesource.com/1185693
Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#585385}
[modify] https://crrev.com/ae2eaa7c0800c2128bbb6c910024478ebaa1a672/DEPS

Sign in to add a comment