New issue
Advanced search Search tips

Issue 906329 link

Starred by 1 user

Issue metadata

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



Sign in to add a comment

ASSERT: (!HasStatus(inst) || Status(inst) != SSAPropagator::kNotInteresting) && "Unsettl

Project Member Reported by ClusterFuzz, Nov 17

Issue description

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

Fuzzer: libFuzzer_spvtools_opt_legalization_fuzzer
Job Type: libfuzzer_chrome_asan_debug
Platform Id: linux

Crash Type: ASSERT
Crash Address: 
Crash State:
  (!HasStatus(inst) || Status(inst) != SSAPropagator::kNotInteresting) && "Unsettl
  spvtools::opt::SSAPropagator::Run
  spvtools::opt::BasicBlock::ForEachInst
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=579911:580305

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Nov 17

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, Nov 17

Cc: dsinclair@chromium.org vmi...@chromium.org piman@chromium.org
Labels: ClusterFuzz-Auto-CC
Automatically adding ccs based on OWNERS file / target commit history.

If this is incorrect, please add ClusterFuzz-Wrong label.
Owner: dsinclair@chromium.org
Status: Assigned (was: Untriaged)
dsinclair: It looks like the fuzzer is working!  Could you help triage this?
Owner: stevenperron@google.com
Status: Started (was: Assigned)
I've seen this in a few cases, but let it go until now because the fuzzer was picking up on other errors.  However, this time is seems like OpUnreachable in a non-empty block is the problem.

There is a function call in a block ending with OpUnreachable.  The result of that function call is also the return value in the callee.  An id is used in a different function that it is defined in.  If the OpUnreachable is changed to OpReturn, then the validator picks up on the error.

We should just add a check that an OpUnreachable is in an empty block.

The OpUnreachable is fine.  So I have fixed the check:

https://github.com/KhronosGroup/SPIRV-Tools/pull/2146
Project Member

Comment 7 by ClusterFuzz, Dec 1

Labels: -Reproducible Unreproducible
ClusterFuzz testcase 4817875480870912 appears to be flaky, updating reproducibility label.
Labels: -Unreproducible Reproducible
Please ignore the last comment about testcase being unreproducible. The testcase is still reproducible. This happened due to a code refactoring on ClusterFuzz side, and the underlying root cause is now fixed. Resetting the label back to Reproducible. Sorry about the inconvenience caused from these incorrect notifications.
Status: Fixed (was: Started)
Project Member

Comment 10 by ClusterFuzz, Dec 4

ClusterFuzz has detected this issue as fixed in range 613267:613291.

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

Fuzzer: libFuzzer_spvtools_opt_legalization_fuzzer
Fuzz target binary: spvtools_opt_legalization_fuzzer
Job Type: libfuzzer_chrome_asan_debug
Platform Id: linux

Crash Type: ASSERT
Crash Address: 
Crash State:
  (!HasStatus(inst) || Status(inst) != SSAPropagator::kNotInteresting) && "Unsettl
  spvtools::opt::SSAPropagator::Run
  spvtools::opt::BasicBlock::ForEachInst
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=579911:580305
Fixed: https://clusterfuzz.com/revisions?job=libfuzzer_chrome_asan_debug&range=613267:613291

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

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 11 by ClusterFuzz, Dec 4

Labels: ClusterFuzz-Verified
Status: Verified (was: Fixed)
ClusterFuzz testcase 4817875480870912 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