New issue
Advanced search Search tips

Issue 844873 link

Starred by 3 users

Issue metadata

Status: Verified
Owner:
Closed: May 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 1
Type: Bug



Sign in to add a comment

Null-dereference WRITE in merge_coincident_vertices

Project Member Reported by ClusterFuzz, May 19 2018

Issue description

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

Fuzzer: inferno_canvas_wrecker
Job Type: mac_asan_chrome
Platform Id: mac

Crash Type: Null-dereference WRITE
Crash Address: 0x000000000018
Crash State:
  merge_coincident_vertices
  path_to_polys
  GrTessellator::PathToTriangles
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=559984:560003

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

Issue filed automatically.

See https://github.com/google/clusterfuzz-tools for more information.
 
Project Member

Comment 1 by ClusterFuzz, May 19 2018

Labels: Test-Predator-Auto-Owner
Owner: senorblanco@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://skia.googlesource.com/skia/+/ec79c39a770205910f0abd762de7e19a96c986ca (GrTessellator: fix for zombie edge fuzzer crash.).

If this is incorrect, please let us know why and apply the Test-Predator-Wrong-CLs label. If you aren't the correct owner for this issue, please unassign yourself as soon as possible so it can be re-triaged.
Project Member

Comment 2 by ClusterFuzz, May 19 2018

Components: Internals>Skia
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 3 by bugdroid1@chromium.org, May 22 2018

The following revision refers to this bug:
  https://skia.googlesource.com/skia/+/7b376940e4722f0da14807bd3b18823d0f7c1964

commit 7b376940e4722f0da14807bd3b18823d0f7c1964
Author: Stephen White <senorblanco@chromium.org>
Date: Tue May 22 16:52:45 2018

GrTessellator: fix crash on merging a dead edge.

When merging coincident vertices, sometimes merging an edge will cause
the next edge in the list to die. But since merge_vertices() retrieves
the next edge before merging the current one, we then try to merge its
lifeless corpse, bringing it back as a zombie. The fix is to leave
dead edges, dead.

This was revealed by ec79c39a770205910f0abd762de7e19a96c986ca, but was
likely a real bug that was being mishandled before that.

Bug:  844873 
Bug: skia:7982
Change-Id: I752c45f7551df4278fa4cb4587e7ead48cd16a21
Reviewed-on: https://skia-review.googlesource.com/129524
Commit-Queue: Stephen White <senorblanco@chromium.org>
Reviewed-by: Robert Phillips <robertphillips@google.com>

[modify] https://crrev.com/7b376940e4722f0da14807bd3b18823d0f7c1964/tests/TessellatingPathRendererTests.cpp
[modify] https://crrev.com/7b376940e4722f0da14807bd3b18823d0f7c1964/src/gpu/GrTessellator.cpp

Project Member

Comment 4 by bugdroid1@chromium.org, May 22 2018

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

commit a1c6e70973466a724603101140aebca3ea5d315b
Author: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Tue May 22 22:19:02 2018

Roll src/third_party/skia/ 5b58b7c14..91dfa3b57 (13 commits)

https://skia.googlesource.com/skia.git/+log/5b58b7c14c44..91dfa3b571f1

$ git log 5b58b7c14..91dfa3b57 --date=short --no-merges --format='%ad %ae %s'
2018-05-22 egdaniel Reland "Move gn setup for vulkan library/headers into their own third_party directory."
2018-05-22 bungeman Remove include/gpu/gl from include paths.
2018-05-22 bsalomon Use layered templates for optional vertex attributes in GrTextureOp.
2018-05-22 mtklein start cleaning up non-skcms SkColorSpaceXforms
2018-05-22 egdaniel Add more blacklists for intel 405 vulkan perf bot.
2018-05-22 herb Remove SkTextBox
2018-05-22 bungeman Revert "Revert "IWYU for tests starting with 'D'.""
2018-05-22 senorblanco GrTessellator: fix crash on merging a dead edge.
2018-05-22 benjaminwagner Rename SwiftShader bots from CPU to GPU.
2018-05-22 bungeman Update SampleLua and lua files.
2018-05-22 jcgregorio Revert "Update docs preview URL in presubmit"
2018-05-22 bsalomon GrTextureOp: Rename template params "V" instead of "Vertex".
2018-05-22 angle-skia-autoroll Roll third_party/externals/angle2/ 787338f9b..534b00dbd (1 commit)

Created with:
  roll-dep src/third_party/skia
BUG= chromium:844873 


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
TBR=allanmac@chromium.org

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

Project Member

Comment 5 by ClusterFuzz, May 23 2018

ClusterFuzz has detected this issue as fixed in range 560797:560825.

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

Fuzzer: inferno_canvas_wrecker
Job Type: mac_asan_chrome
Platform Id: mac

Crash Type: Null-dereference WRITE
Crash Address: 0x000000000018
Crash State:
  merge_coincident_vertices
  path_to_polys
  GrTessellator::PathToTriangles
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=559984:560003
Fixed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=560797:560825

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

See https://github.com/google/clusterfuzz-tools 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 6 by ClusterFuzz, May 23 2018

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