New issue
Advanced search Search tips

Issue 871065 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Aug 9
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 1
Type: Bug



Sign in to add a comment

Null-dereference READ in spvtools::opt::Instruction::HasResultId

Project Member Reported by ClusterFuzz, Aug 5

Issue description

Detailed report: https://clusterfuzz.com/testcase?key=5589659296727040

Fuzzer: afl_spvtools_opt_size_fuzzer
Job Type: afl_chrome_asan
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x00000000002d
Crash State:
  spvtools::opt::Instruction::HasResultId
  spvtools::opt::analysis::DefUseManager::WhileEachUser
  spvtools::opt::LocalAccessChainConvertPass::HasOnlySupportedRefs
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=580304:580305

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5589659296727040

Issue filed automatically.

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md for more information.
 
Project Member

Comment 1 by ClusterFuzz, Aug 5

Components: Internals>GPU>Internals
Labels: Test-Predator-Auto-Components
Automatically applying components based on crash stacktrace and information from OWNERS files.

If this is incorrect, please apply the Test-Predator-Wrong-Components label.
Project Member

Comment 2 by ClusterFuzz, Aug 5

Cc: 31666...@users.noreply.github.com d...@everburning.com
Labels: Test-Predator-Auto-CC
Automatically adding ccs based on suspected regression changelists:

Update OpPhi instructions after splitting block. (#1783) by 31666470+s-perron@users.noreply.github.com - https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+/ce644d4a2484fe66e53f5b744ebc4d0d5d49e1ca

Remove using std::<foo> statements. (#1756) by dj2@everburning.com - https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+/a5a5ea0e2dfce9c755a88af1074ebe68a44d2ed9

If this is incorrect, please let us know why and apply the Test-Predator-Wrong-CLs label.
dj2@ Could you please look into this issue.
Cc: -31666...@users.noreply.github.com -d...@everburning.com stevenperron@google.com
Owner: dsinclair@chromium.org
Status: Assigned (was: Untriaged)
Status: Fixed (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Aug 10

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

commit f1ea2746039f0e56cce593d53225707b71ab83fe
Author: Dan Sinclair <dsinclair@chromium.org>
Date: Fri Aug 10 00:21:24 2018

Roll src/third_party/SPIRV-Tools/src/ 2d9a32526..714bf84e5 (14 commits)

$ git log 2d9a32526..714bf84e5 --date=short --no-merges --format='%ad %ae %s'
2018-08-08 alanbaker Split mode setting opcode validation into new file.
2018-08-08 alanbaker Split annotation opcode validation into new file.
2018-08-08 alanbaker Replace asserts with returns
2018-08-08 alanbaker Split debug opcode validation into new file
2018-08-03 alanbaker Move type instruction validation into separate file
2018-08-08 31666470+s-perron Validate the input to Optimizer::Run (#1799)
2018-08-03 alanbaker Unify validation of OpCopyMemory*
2018-08-03 alanbaker Refactor where opcodes are validated
2018-08-07 shartte When clang is used as a MSVC frontend (clang-cl.exe) it does not behave exactly as GCC would. I.e. -Wall translates to /Wall, which is an alias for -Weverything. This causes massive C++98 compat warnings logspam. (#1808)
2018-08-07 dj2 Remove unused bit stream methods. (#1807)
2018-08-07 dj2 Simplify MoveToFront (#1806)
2018-08-07 dj2 Fixup readabilty/inheritance warnings (#1805)
2018-08-07 dj2 Fix readbility/braces warnings (#1804)
2018-08-03 dj2 Cleanup includes. (#1795)

Created with:
  roll-dep src/third_party/SPIRV-Tools/src

Bug:  870510 ,  870571 ,  870681 ,  871065 ,  872572 

TBR=dneto@chromium.org

Change-Id: I6e50c26fb10368a912c9f7e95b12dd789f0bf5f5
Reviewed-on: https://chromium-review.googlesource.com/1169129
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Cr-Commit-Position: refs/heads/master@{#581976}
[modify] https://crrev.com/f1ea2746039f0e56cce593d53225707b71ab83fe/DEPS

Project Member

Comment 7 by ClusterFuzz, Aug 10

ClusterFuzz has detected this issue as fixed in range 581965:581976.

Detailed report: https://clusterfuzz.com/testcase?key=5589659296727040

Fuzzer: afl_spvtools_opt_size_fuzzer
Job Type: afl_chrome_asan
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x00000000002d
Crash State:
  spvtools::opt::Instruction::HasResultId
  spvtools::opt::analysis::DefUseManager::WhileEachUser
  spvtools::opt::LocalAccessChainConvertPass::HasOnlySupportedRefs
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=580304:580305
Fixed: https://clusterfuzz.com/revisions?job=afl_chrome_asan&range=581965:581976

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=5589659296727040

See https://chromium.googlesource.com/chromium/src/+/master/testing/libfuzzer/reference.md for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
Project Member

Comment 8 by ClusterFuzz, Aug 10

Labels: ClusterFuzz-Verified
Status: Verified (was: Fixed)
ClusterFuzz testcase 5589659296727040 is verified as fixed, so closing issue as verified.

If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.

Sign in to add a comment