Bug 229723 - [ BigSur EWS ] ASSERTION FAILED: reasonForSuspendingActiveDOMObjects() == ReasonForSuspension::PageWillBeSuspended
Summary: [ BigSur EWS ] ASSERTION FAILED: reasonForSuspendingActiveDOMObjects() == Rea...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Mac (Apple Silicon) Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-08-31 11:51 PDT by ayumi_kojima
Modified: 2021-09-07 09:49 PDT (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description ayumi_kojima 2021-08-31 11:51:12 PDT
http/tests/security/no-indexeddb-from-sandbox.html

Is a flaky crash on macOS-AppleSilicon-Big-Sur-Debug-WK2-Tests-EWS.

It looks like the flakiness started at https://ews-build.webkit.org/#/builders/60/builds/6658

Result page: https://ews-build.s3-us-west-2.amazonaws.com/macOS-AppleSilicon-Big-Sur-Debug-WK2-Tests-EWS/r431686-6658-rerun/results.html

The crash is not seen in the open source directory: https://results.webkit.org/?suite=layout-tests&test=http/tests/security/no-indexeddb-from-sandbox.html

ASSERTION FAILED: reasonForSuspendingActiveDOMObjects() == ReasonForSuspension::PageWillBeSuspended
./dom/Document.cpp(6557) : void WebCore::Document::suspendScheduledTasks(WebCore::ReasonForSuspension)
1   0x13a0a6a8c WTFCrash
2   0x1187402d0 JSC::JSValue::isUndefined() const
3   0x11b0d7758 WebCore::Document::suspendScheduledTasks(WebCore::ReasonForSuspension)
4   0x11b0ec920 WebCore::Document::suspend(WebCore::ReasonForSuspension)
5   0x11b5708bc WebCore::CachedFrame::CachedFrame(WebCore::Frame&)
6   0x11b570d7c WebCore::CachedFrame::CachedFrame(WebCore::Frame&)
7   0x11b5792a8 std::__1::__unique_if<WebCore::CachedFrame>::__unique_single std::__1::make_unique<WebCore::CachedFrame, WebCore::Frame&>(WebCore::Frame&)
8   0x11b5718dc decltype(auto) WTF::makeUnique<WebCore::CachedFrame, WebCore::Frame&>(WebCore::Frame&)
9   0x11b571830 WebCore::CachedPage::CachedPage(WebCore::Page&)
10  0x11b571910 WebCore::CachedPage::CachedPage(WebCore::Page&)
11  0x11b5784ec std::__1::__unique_if<WebCore::CachedPage>::__unique_single std::__1::make_unique<WebCore::CachedPage, WebCore::Page&>(WebCore::Page&)
12  0x11b56d988 decltype(auto) WTF::makeUnique<WebCore::CachedPage, WebCore::Page&>(WebCore::Page&)
13  0x11b56d718 WebCore::BackForwardCache::trySuspendPage(WebCore::Page&, WebCore::BackForwardCache::ForceSuspension)
14  0x11b56da28 WebCore::BackForwardCache::addIfCacheable(WebCore::HistoryItem&, WebCore::Page*)
15  0x11be5f51c WebCore::FrameLoader::commitProvisionalLoad()
16  0x11bddbe24 WebCore::DocumentLoader::commitIfReady()
17  0x11bddc448 WebCore::DocumentLoader::finishedLoading()
18  0x11bde6ca0 WebCore::DocumentLoader::maybeLoadEmpty()
19  0x11bde6e18 WebCore::DocumentLoader::startLoadingMainResource()
20  0x11be8b494 WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)::$_11::operator()()
21  0x11be8af94 WTF::Detail::CallableWrapper<WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)::$_11, void>::call()
22  0x11a40f37c WTF::Function<void ()>::operator()() const
23  0x117f21120 WTF::CompletionHandler<void ()>::operator()()
24  0x11be5cd34 WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)
25  0x11be8754c WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WebCore::AllowNavigationToInvalidURL, WTF::CompletionHandler<void ()>&&)::$_8::operator()(WebCore::ResourceRequest const&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
26  0x11be87414 WTF::Detail::CallableWrapper<WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WebCore::AllowNavigationToInvalidURL, WTF::CompletionHandler<void ()>&&)::$_8, void, WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision>::call(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
27  0x11becc70c WTF::Function<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision) const
28  0x11bebcbe0 WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
29  0x11becfd68 WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest&&, WebCore::ResourceResponse const&, WebCore::DocumentLoader*, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>&&, WebCore::PolicyDecisionMode)::$_3::operator()(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)
30  0x11becf1ac WTF::Detail::CallableWrapper<WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest&&, WebCore::ResourceResponse const&, WebCore::DocumentLoader*, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>&&, WebCore::PolicyDecisionMode)::$_3, void, WebCore::PolicyAction, WebCore::PolicyCheckIdentifier>::call(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)
31  0x1073e6cdc WTF::Function<void (WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)>::operator()(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier) const
com.apple.WebKit.WebContent.Development terminated (pid 6296) because the process crashed
LEAK: 3 WebPageProxy
Comment 1 Radar WebKit Bug Importer 2021-08-31 12:03:28 PDT
<rdar://problem/82590240>
Comment 2 Chris Dumez 2021-08-31 13:20:18 PDT
void Document::suspendScheduledTasks(ReasonForSuspension reason)
{
    if (m_scheduledTasksAreSuspended) {
        // A page may subsequently suspend DOM objects, say as part of handling a scroll or zoom gesture, after the
        // embedding client requested the page be suspended. We ignore such requests so long as the embedding client
        // requested the suspension first. See <rdar://problem/13754896> for more details.
        ASSERT(reasonForSuspendingActiveDOMObjects() == ReasonForSuspension::PageWillBeSuspended);
        return;
    }
Comment 3 ayumi_kojima 2021-08-31 13:24:58 PDT
Marked test expectations https://trac.webkit.org/changeset/281816/webkit
Comment 4 Eric Hutchison 2021-09-07 09:43:46 PDT
Issue is now presenting on OpenSource BigSur wk2 Debug x86 : https://results.webkit.org/?suite=layout-tests&test=http%2Ftests%2Fsecurity%2Fno-indexeddb-from-sandbox.html&platform=ios&platform=mac

No crash log found for com.apple.WebKit.WebContent.Development:69918.

stdout:

stderr:
ASSERTION FAILED: reasonForSuspendingActiveDOMObjects() == ReasonForSuspension::PageWillBeSuspended
./dom/Document.cpp(6630) : void WebCore::Document::suspendScheduledTasks(WebCore::ReasonForSuspension)
1   0x1491a5759 WTFCrash
2   0x127641a4b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x12a75b78a WebCore::Document::suspendScheduledTasks(WebCore::ReasonForSuspension)
4   0x12a7736f4 WebCore::Document::suspend(WebCore::ReasonForSuspension)
5   0x12abfb49f WebCore::CachedFrame::CachedFrame(WebCore::Frame&)
6   0x12abfb99d WebCore::CachedFrame::CachedFrame(WebCore::Frame&)
7   0x12ac03af4 std::__1::__unique_if<WebCore::CachedFrame>::__unique_single std::__1::make_unique<WebCore::CachedFrame, WebCore::Frame&>(WebCore::Frame&)
8   0x12abfc676 decltype(auto) WTF::makeUnique<WebCore::CachedFrame, WebCore::Frame&>(WebCore::Frame&)
9   0x12abfc5c5 WebCore::CachedPage::CachedPage(WebCore::Page&)
10  0x12abfc69d WebCore::CachedPage::CachedPage(WebCore::Page&)
11  0x12ac02ea4 std::__1::__unique_if<WebCore::CachedPage>::__unique_single std::__1::make_unique<WebCore::CachedPage, WebCore::Page&>(WebCore::Page&)
12  0x12abf84b6 decltype(auto) WTF::makeUnique<WebCore::CachedPage, WebCore::Page&>(WebCore::Page&)
13  0x12abf820b WebCore::BackForwardCache::trySuspendPage(WebCore::Page&, WebCore::BackForwardCache::ForceSuspension)
14  0x12abf8539 WebCore::BackForwardCache::addIfCacheable(WebCore::HistoryItem&, WebCore::Page*)
15  0x12b4bf861 WebCore::FrameLoader::commitProvisionalLoad()
16  0x12b433d0c WebCore::DocumentLoader::commitIfReady()
17  0x12b434531 WebCore::DocumentLoader::finishedLoading()
18  0x12b442591 WebCore::DocumentLoader::maybeLoadEmpty()
19  0x12b442715 WebCore::DocumentLoader::startLoadingMainResource()
20  0x12b4e474d WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)::$_11::operator()()
21  0x12b4e40ce WTF::Detail::CallableWrapper<WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)::$_11, void>::call()
22  0x12765ae92 WTF::Function<void ()>::operator()() const
23  0x127684b15 WTF::CompletionHandler<void ()>::operator()()
24  0x12b4bcae5 WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)
25  0x12b4e0a30 WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WebCore::AllowNavigationToInvalidURL, WTF::CompletionHandler<void ()>&&)::$_8::operator()(WebCore::ResourceRequest const&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
26  0x12b4e08ec WTF::Detail::CallableWrapper<WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WebCore::AllowNavigationToInvalidURL, WTF::CompletionHandler<void ()>&&)::$_8, void, WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision>::call(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
27  0x12b52a521 WTF::Function<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision) const
28  0x12b50fe47 WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)
29  0x12b52d6ae WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest&&, WebCore::ResourceResponse const&, WebCore::DocumentLoader*, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>&&, WebCore::PolicyDecisionMode)::$_7::operator()(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)
30  0x12b52c757 WTF::Detail::CallableWrapper<WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest&&, WebCore::ResourceResponse const&, WebCore::DocumentLoader*, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::EmptyCounter>&&, WebCore::NavigationPolicyDecision)>&&, WebCore::PolicyDecisionMode)::$_7, void, WebCore::PolicyAction, WebCore::PolicyCheckIdentifier>::call(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)
31  0x117965e78 WTF::Function<void (WebCore::PolicyAction, WebCore::PolicyCheckIdentifier)>::operator()(WebCore::PolicyAction, WebCore::PolicyCheckIdentifier) const
com.apple.WebKit.WebContent.Development terminated (pid 69918) because the process crashed
LEAK: 4 WebPageProxy
Comment 5 Eric Hutchison 2021-09-07 09:49:11 PDT
Updated test expectations at http://trac.webkit.org/changeset/282093/webkit.