New issue
Advanced search Search tips

Issue 788802 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug



Sign in to add a comment

Null-dereference READ in blink::ThreadState::FreePersistentNode

Project Member Reported by ClusterFuzz, Nov 27 2017

Issue description

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

Fuzzer: inferno_twister
Job Type: windows_asan_content_shell
Platform Id: windows

Crash Type: Null-dereference READ
Crash Address: 0x00000008
Crash State:
  blink::ThreadState::FreePersistentNode
  blink::PersistentBase<blink::Permissions,blink::WeaknessPersistentConfiguration:
  blink::PtrStorageImpl<blink::HistoryItem,blink::WebPrivatePtrDestruction::kWebPr
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=519268:519279

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

Additional requirements: Requires Gestures

Additional requirements: Requires HTTP

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Nov 27 2017

Components: Blink>Internals>Modularization Blink>MemoryAllocator>GarbageCollection
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 27 2017

Labels: Test-Predator-Auto-Owner
Owner: hbos@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/27d21eb0af100f86a2dfca5bccecf60e2d71f70e (Unify SetRemoteDescription track and SRD resolve events in one callback.).

If this is incorrect, please remove the owner and apply the Test-Predator-Wrong-CLs label.

Comment 3 by hbos@chromium.org, Nov 27 2017

Reported at the same time blaming the same CL:  https://crbug.com/788809 .
May be related, investigating there.

Comment 4 by hbos@chromium.org, Nov 27 2017

Status: Started (was: Assigned)
Project Member

Comment 5 by bugdroid1@chromium.org, Nov 27 2017

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

commit 1aa2887ffca8e6ce3a74891e71720bc3e0ad809c
Author: Henrik Boström <hbos@chromium.org>
Date: Mon Nov 27 18:55:09 2017

WebRtcSetRemoteDescriptionObserverImpl: Reset WebRTCVoidRequest on main thread

This prevents a race between the main thread and the webrtc signaling
thread dictating on which thread the observer is destroyed, and by
extension which thread destroys WebRTCVoidRequest.

It is not safe to reset the request on the webrtc signaling thread, by
explicitly calling Reset in the callback we ensure it has already been
reset when the destructor runs.

The referenced bugs are suspected to be caused by this bug.

NOTRY=True
TBR=guidou@chromium.org

Bug:  788809 ,  788802 
Change-Id: Ie725fc9af85fbb4e925f1410f1c728da7173350e
Reviewed-on: https://chromium-review.googlesource.com/791350
Commit-Queue: Henrik Boström <hbos@chromium.org>
Reviewed-by: Henrik Boström <hbos@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519354}
[modify] https://crrev.com/1aa2887ffca8e6ce3a74891e71720bc3e0ad809c/content/renderer/media/rtc_peer_connection_handler.cc

Comment 6 by hbos@chromium.org, Nov 27 2017

Status: Fixed (was: Started)
Speculatively marking this as Fixed, without having been able to verify because I couldn't repro.
Project Member

Comment 7 by ClusterFuzz, Nov 28 2017

ClusterFuzz has detected this issue as fixed in range 519344:519369.

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

Fuzzer: inferno_twister
Job Type: windows_asan_content_shell
Platform Id: windows

Crash Type: Null-dereference READ
Crash Address: 0x00000008
Crash State:
  blink::ThreadState::FreePersistentNode
  blink::PersistentBase<blink::Permissions,blink::WeaknessPersistentConfiguration:
  blink::PtrStorageImpl<blink::HistoryItem,blink::WebPrivatePtrDestruction::kWebPr
  
Sanitizer: address (ASAN)

Regressed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=519268:519279
Fixed: https://clusterfuzz.com/revisions?job=windows_asan_content_shell&range=519344:519369

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

Additional requirements: Requires Gestures

Additional requirements: Requires HTTP

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 8 by ClusterFuzz, Nov 28 2017

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

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

Comment 9 by hbos@chromium.org, Dec 5 2017

Cc: hbos@chromium.org
 Issue 788809  has been merged into this issue.

Comment 10 by hbos@chromium.org, Dec 5 2017

 Issue 788760  has been merged into this issue.

Sign in to add a comment