Bug 231752 - REGRESSION (r284143): [ iOS macOS wk2 Debug ] ASSERTION FAILED: other.underlyingStringIsValid() under WebCore::FragmentDirectiveParser::fragmentDirective()
Summary: REGRESSION (r284143): [ iOS macOS wk2 Debug ] ASSERTION FAILED: other.underly...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-10-14 11:20 PDT by ayumi_kojima
Modified: 2021-10-16 19:13 PDT (History)
6 users (show)

See Also:


Attachments
Crash log (96.39 KB, text/plain)
2021-10-14 11:21 PDT, ayumi_kojima
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description ayumi_kojima 2021-10-14 11:20:40 PDT
imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-049.html

Is a flaky crash on Catalina wk2 Debug, Catalina gpurocess Debug, and iOS 15 Debug. The test is also showing up on macOS-AppleSilicon-Big-Sur-Debug-WK2-Tests-EWS.

History: https://results.webkit.org/?suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fcss%2Fcss-contain%2Fcontent-visibility%2Fcontent-visibility-049.html

Result page: https://build.webkit.org/results/Apple-Catalina-Debug-WK2-Tests/r284150%20(16826)/results.html

Stderr:

ASSERTION FAILED: other.underlyingStringIsValid()
/Volumes/Data/worker/catalina-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h(288) : WTF::StringView::StringView(const WTF::StringView &)
1   0x8280ecdd9 WTFCrash
2   0x803a29b7b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x803ada03b WTF::StringView::StringView(WTF::StringView const&)
4   0x803ad9a4d WTF::StringView::StringView(WTF::StringView const&)
5   0x807dec0e6 WebCore::FragmentDirectiveParser::fragmentDirective() const
6   0x807debe9d WebCore::FrameView::scrollToFragment(WTF::URL const&)
7   0x807b6bcb9 WebCore::FrameLoader::scrollToFragmentWithParentBoundary(WTF::URL const&, bool)
8   0x807b69f8e WebCore::FrameLoader::finishedParsing()
9   0x807b69918 WebCore::FrameLoader::stopLoading(WebCore::UnloadEventPolicy)
10  0x807b6a149 WebCore::FrameLoader::closeURL()
11  0x807b7dd69 WebCore::FrameLoader::detachFromParent()
12  0x7f24e1b8e WebKit::WebPage::close()
13  0x7f259cc94 void IPC::callMemberFunctionImpl<WebKit::WebPage, void (WebKit::WebPage::*)(), std::__1::tuple<> >(WebKit::WebPage*, void (WebKit::WebPage::*)(), std::__1::tuple<>&&, std::__1::integer_sequence<unsigned long>)
14  0x7f259cba0 void IPC::callMemberFunction<WebKit::WebPage, void (WebKit::WebPage::*)(), std::__1::tuple<>, std::__1::integer_sequence<unsigned long> >(std::__1::tuple<>&&, WebKit::WebPage*, void (WebKit::WebPage::*)())
15  0x7f255ee00 void IPC::handleMessage<Messages::WebPage::Close, WebKit::WebPage, void (WebKit::WebPage::*)()>(IPC::Connection&, IPC::Decoder&, WebKit::WebPage*, void (WebKit::WebPage::*)())
16  0x7f2553c2a WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection&, IPC::Decoder&)
17  0x7f24f3aee WebKit::WebPage::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
18  0x7f05f0ed5 IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&)
19  0x7f1dca707 WebKit::WebProcess::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
20  0x7f0095714 IPC::Connection::dispatchMessage(IPC::Decoder&)
21  0x7f0095eff IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)
22  0x7f0096530 IPC::Connection::dispatchOneIncomingMessage()
23  0x7f00b8008 IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_12::operator()()
24  0x7f00b7efe WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_12, void>::call()
25  0x82811a9f2 WTF::Function<void ()>::operator()() const
26  0x8281a6200 WTF::RunLoop::performWork()
27  0x8281aab81 WTF::RunLoop::performWork(void*)
28  0x7fff38e45d52 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
29  0x7fff38e45cf1 __CFRunLoopDoSource0
30  0x7fff38e45b0b __CFRunLoopDoSources0
31  0x7fff38e4483a __CFRunLoopRun
com.apple.WebKit.WebContent.Development terminated (pid 42754) because the process crashed
LEAK: 3 WebPageProxy
Comment 1 ayumi_kojima 2021-10-14 11:21:21 PDT
Created attachment 441244 [details]
Crash log
Comment 2 Radar WebKit Bug Importer 2021-10-14 11:21:42 PDT
<rdar://problem/84265525>
Comment 3 ayumi_kojima 2021-10-14 11:32:36 PDT
Marked test expectations https://trac.webkit.org/changeset/284181/webkit
Comment 4 ayumi_kojima 2021-10-14 12:05:33 PDT
I was not able to reproduce the failure locally on BigSur using run-webkit-tests imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-049.html --debug --force -f --iterations 50 --exit-after-n-crashes-or-timeouts 1.

I will try to see if I can reproduce on Catalina.

According to the history, it looks like the test started flaky recently.
Comment 5 Ryan Haddad 2021-10-14 12:17:30 PDT
WebCore::FragmentDirectiveParser::fragmentDirective() is new, added with https://trac.webkit.org/changeset/284143/webkit
Comment 6 Tim Horton 2021-10-16 16:42:42 PDT
Reverted the expectation change in https://trac.webkit.org/changeset/284328/webkit
Reverted the root cause in https://trac.webkit.org/changeset/284326/webkit
I wasn't able to repro locally either, so I didn't manage to fix this.
Comment 7 Chris Dumez 2021-10-16 18:53:04 PDT
(In reply to Tim Horton from comment #6)
> Reverted the expectation change in
> https://trac.webkit.org/changeset/284328/webkit
> Reverted the root cause in https://trac.webkit.org/changeset/284326/webkit
> I wasn't able to repro locally either, so I didn't manage to fix this.

I commented on the original patch to explain why this is happening.
Comment 8 Tim Horton 2021-10-16 19:13:37 PDT
(In reply to Chris Dumez from comment #7)
> (In reply to Tim Horton from comment #6)
> > Reverted the expectation change in
> > https://trac.webkit.org/changeset/284328/webkit
> > Reverted the root cause in https://trac.webkit.org/changeset/284326/webkit
> > I wasn't able to repro locally either, so I didn't manage to fix this.
> 
> I commented on the original patch to explain why this is happening.

Thank you!