New issue
Advanced search Search tips

Issue 911395 link

Starred by 1 user

Issue metadata

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

Blocking:
issue 838348



Sign in to add a comment

CHECK failure: main_frame_->IsAttached() in page.cc

Project Member Reported by ClusterFuzz, Dec 4

Issue description

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

Fuzzer: ifratric-browserfuzzer-v3
Job Type: linux_ubsan_chrome
Platform Id: linux

Crash Type: CHECK failure
Crash Address: 
Crash State:
  main_frame_->IsAttached() in page.cc
  blink::Page::RequestBeginMainFrameNotExpected
  blink::scheduler::MainThreadSchedulerImpl::DispatchRequestBeginMainFrameNotExpec
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_chrome&range=606653:606655

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

Issue filed automatically.

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

Comment 1 by ClusterFuzz, Dec 4

Components: Blink
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, Dec 4

Labels: Test-Predator-Auto-Owner
Owner: danakj@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/68d8dbc019fd37659252e273ade868aac7a9d8ac (Don't make a LayerTreeFrameSink for a non-visible RenderWidget.).

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.
Blocking: 838348
Cc: danakj@chromium.org dcheng@chromium.org
Owner: dcheng@chromium.org
This is a racey CHECK, and I think the code should be fixed to deal with this case.

This method is run on a post-task. If the frame was actually detached, then it would be removed from Page and this method would have early outted. Which I assume means it is in kDetaching state, and Frame::Detach() early outted?

https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/frame/frame.cc?rcl=7a0ed6e7db059cc42feb9fc3ad2ac857c0ba31c4&l=89

  // Due to re-entrancy, |this| could have completed detaching already.
  if (!client_)
    return;

Looks like this is hitting the CHECK added for investigating 838348, so this should with diagnosing.
Components: -Blink Blink>Internals
Project Member

Comment 5 by ClusterFuzz, Dec 5

ClusterFuzz has detected this issue as fixed in range 613666:613677.

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

Fuzzer: ifratric-browserfuzzer-v3
Job Type: linux_ubsan_chrome
Platform Id: linux

Crash Type: CHECK failure
Crash Address: 
Crash State:
  main_frame_->IsAttached() in page.cc
  blink::Page::RequestBeginMainFrameNotExpected
  blink::scheduler::MainThreadSchedulerImpl::DispatchRequestBeginMainFrameNotExpec
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_chrome&range=606653:606655
Fixed: https://clusterfuzz.com/revisions?job=linux_ubsan_chrome&range=613666:613677

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

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, Dec 5

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