Crash in sh::CollectVariables::visitDeclaration |
|||
Issue descriptionDetailed report: https://clusterfuzz.com/testcase?key=6429365316616192 Fuzzer: afl_angle_translator_fuzzer Job Type: afl_chrome_asan Platform Id: linux Crash Type: UNKNOWN READ Crash Address: 0x000000000000 Crash State: sh::CollectVariables::visitDeclaration sh::TIntermTraverser::traverseDeclaration sh::TIntermTraverser::traverseBlock Sanitizer: address (ASAN) Regressed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=428621:428622 Reproducer Testcase: https://clusterfuzz.com/download/AMIfv96a83C2D7llmOK-bKcvXcRi9RZATHPOUj3wlmor3CIRxgjaQ2cDzbuUxC7oPUzm3u_9ozajuRE8muMyDP-HAn_DYMkkjI0MO5CQanny5_zs_VKVpVaMpYsNrEuLTcBBGKqBduX3-4Gs9y2wLqTttmcJ-MGmzsgITXpNhTukRNtiviz_PFnyAgjcVuNBRUYYA2lR3xgg5L54aTWIb7u7qQaD7HCcLVNP8uKX8KIIQrJx9YK54wB2ufpCFlK7__uhD0ArAIZ_CF-aMgJdRDd2XRhe3B4CmTRMgQbf3UwKi88kpohN1AuCpXnoWZAluyhD5Tn-bXvtz5va5EHvA5OnTbh8PpEIDR9utXJiWCDxTy3RbzlMrCA?testcase_id=6429365316616192 Issue filed automatically. See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reproducing.md for more information.
,
Apr 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/angle/angle/+/8162926b2bbaba65cb5bb114403b4dac5b0677fe commit 8162926b2bbaba65cb5bb114403b4dac5b0677fe Author: Olli Etuaho <oetuaho@nvidia.com> Date: Thu Apr 20 07:38:00 2017 Never add declarations without children to the AST When block nodes were being created for loop bodies that didn't have braces in the parsed source, the code didn't check if the loop body was a declaration node without children. Always use appendStatement() for adding statements to a block, so that declaration nodes without children don't end up in the AST. Similarly make sure that loop init nodes aren't declarations without children. BUG= chromium:712550 TEST=angle_end2end_tests Change-Id: I5e79b700fe6158fa2422fcf4cd13818b2bd24863 Reviewed-on: https://chromium-review.googlesource.com/481660 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/Intermediate.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/tests/gl_tests/GLSLTest.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/IntermNode.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/IntermNode.h
,
Apr 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/angle/angle/+/8162926b2bbaba65cb5bb114403b4dac5b0677fe commit 8162926b2bbaba65cb5bb114403b4dac5b0677fe Author: Olli Etuaho <oetuaho@nvidia.com> Date: Thu Apr 20 07:38:00 2017 Never add declarations without children to the AST When block nodes were being created for loop bodies that didn't have braces in the parsed source, the code didn't check if the loop body was a declaration node without children. Always use appendStatement() for adding statements to a block, so that declaration nodes without children don't end up in the AST. Similarly make sure that loop init nodes aren't declarations without children. BUG= chromium:712550 TEST=angle_end2end_tests Change-Id: I5e79b700fe6158fa2422fcf4cd13818b2bd24863 Reviewed-on: https://chromium-review.googlesource.com/481660 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Olli Etuaho <oetuaho@nvidia.com> [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/Intermediate.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/tests/gl_tests/GLSLTest.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/IntermNode.cpp [modify] https://crrev.com/8162926b2bbaba65cb5bb114403b4dac5b0677fe/src/compiler/translator/IntermNode.h
,
Apr 20 2017
Should be fixed in the next roll. Thanks Olli!
,
Apr 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5c129fa2384499f365d593c3cb23a3921c98a845 commit 5c129fa2384499f365d593c3cb23a3921c98a845 Author: fjhenigman <fjhenigman@chromium.org> Date: Thu Apr 20 21:25:37 2017 Roll ANGLE b812669..ba992ab https://chromium.googlesource.com/angle/angle.git/+log/b812669..ba992ab BUG=,chromium:712550 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/2834703002 Cr-Commit-Position: refs/heads/master@{#466139} [modify] https://crrev.com/5c129fa2384499f365d593c3cb23a3921c98a845/DEPS
,
Apr 25 2017
ClusterFuzz has detected this issue as fixed in range 465939:466784. Detailed report: https://clusterfuzz.com/testcase?key=6429365316616192 Fuzzer: afl_angle_translator_fuzzer Job Type: afl_chrome_asan Platform Id: linux Crash Type: UNKNOWN READ Crash Address: 0x000000000000 Crash State: sh::CollectVariables::visitDeclaration sh::TIntermTraverser::traverseDeclaration sh::TIntermTraverser::traverseBlock Sanitizer: address (ASAN) Regressed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=428621:428622 Fixed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=465939:466784 Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=6429365316616192 See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reproducing.md for more information. If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
,
Apr 25 2017
ClusterFuzz testcase 6429365316616192 is verified as fixed, so closing issue. If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue. |
|||
►
Sign in to add a comment |
|||
Comment 1 by msrchandra@chromium.org
, Apr 18 2017Components: Internals>GPU>ANGLE
Labels: M-60 Test-Predator-Correct-CLs
Owner: jmad...@chromium.org
Status: Assigned (was: Untriaged)