RESOLVED FIXED 280563
REGRESSION(284324@main): ASSERTION FAILED: bool(*this) in Markable::operator*() under WebKit::ServiceWorkerFetchTask::cancelFromClient
https://bugs.webkit.org/show_bug.cgi?id=280563
Summary REGRESSION(284324@main): ASSERTION FAILED: bool(*this) in Markable::operator*...
Fujii Hironori
Reported 2024-09-28 05:20:41 PDT
Windows port Debug build is randomly crashing for http/wpt/service-workers/fetch-service-worker-preload-use-download.https.html after 284324@main. Buildbot: builder Windows-64-bit-Debug-Tests build 82 : 284337@main https://build.webkit.org/#/builders/1190/builds/82 https://build.webkit.org/results/Windows-64-bit-Debug-Tests/284337@main%20(82)/http/wpt/service-workers/fetch-service-worker-preload-use-download.https-stderr.txt ASSERTION FAILED: bool(*this) C:\BW\Windows-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf/Markable.h(146) : T &WTF::Markable<WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>>::operator*() & [T = WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>, Traits = WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>::MarkableTraits] 1 00007FFD0E1E5DA6 WKImageCreateFromCairoSurface 2 00007FFD0E1CD95E WKImageCreateFromCairoSurface 3 00007FFD0E0FDD5C WKImageCreateFromCairoSurface 4 00007FFD0E02AC97 WKImageCreateFromCairoSurface 5 00007FFD0D55F2AC WKImageCreateFromCairoSurface 6 00007FFD0D55F23D WKImageCreateFromCairoSurface 7 00007FFD0D55F21A WKImageCreateFromCairoSurface 8 00007FFD0D55F1E2 WKImageCreateFromCairoSurface 9 00007FFD0D55EA8F WKImageCreateFromCairoSurface 10 00007FFD0D54C422 WKImageCreateFromCairoSurface 11 00007FFD0D542089 WKImageCreateFromCairoSurface 12 00007FFD0E3FC523 WKImageCreateFromCairoSurface 13 00007FFD0E3FC7C2 WKImageCreateFromCairoSurface 14 00007FFD0E3FCAED WKImageCreateFromCairoSurface 15 00007FFD0E4023BB WKImageCreateFromCairoSurface 16 00007FFD0E402357 WKImageCreateFromCairoSurface 17 00007FFD0A2FC559 Inspector::InspectorTarget::setResumeCallback 18 00007FFD0B378BAA WTF::RunLoop::isCurrent 19 00007FFD0B51E7CD WTF::OSAllocator::protect 20 00007FFD0B51E6C7 WTF::OSAllocator::protect 21 00007FFD2716FE79 CallWindowProcW 22 00007FFD2716F7F2 DispatchMessageW 23 00007FFD0B51EA6D WTF::RunLoop::run 24 00007FFD0D2ECB93 WebKit::NetworkProcessMain 25 00007FFD0D2ECA47 WebKit::NetworkProcessMain 26 00007FFD0D2EC9EB WebKit::NetworkProcessMain 27 00007FF61CDC101C (null) 28 00007FF61CDC13CC (null) 29 00007FFD2BC54CB0 BaseThreadInitThunk 30 00007FFD3ABFEC4B RtlUserThreadStart ERROR: 0000026C4FE9B910 - NetworkProcessProxy::didClose (Network Process crash) C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\UIProcess/Network/NetworkProcessProxy.cpp(477) : virtual void WebKit::NetworkProcessProxy::didClose(IPC::Connection &) ERROR: 000001DEF10F09A0 - WebLoaderStrategy::networkProcessCrashed: failing all pending resource loaders C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\WebProcess/Network/WebLoaderStrategy.cpp(645) : void WebKit::WebLoaderStrategy::networkProcessCrashed() NetworkProcess terminated (pid 5912) for reason: crash
Attachments
Fujii Hironori
Comment 2 2024-09-28 05:21:27 PDT
This is a crash log of 284329@main on our internal Windows Debug layout test bot. ASSERTION FAILED: bool(*this) C:\ews\work\build\WebKitBuild\Debug\WTF\Headers\wtf/Markable.h(146) : T &WTF::Markable<WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>>::operator*() & [T = WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>, Traits = WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<uint64_t>, unsigned long long, WTF::SupportsObjectIdentifierNullState::No>::MarkableTraits] 1 00007FFC0B678EBF WTF::Markable<WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0>,WTF::ObjectIdentifierGeneric<WebCore::ServiceWorkerIdentifierType,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0>::MarkableTraits>::operator* 2 00007FFC0B661067 WebKit::ServiceWorkerFetchTask::cancelFromClient 3 00007FFC0B5989D9 WebKit::NetworkResourceLoader::abort 4 00007FFC0B4CDF23 WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier 5 00007FFC0AA4971C IPC::callMemberFunction<WebKit::NetworkConnectionToWebProcess,WebKit::NetworkConnectionToWebProcess,void (WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0>),std::tuple<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> > >::<lambda_1>::operator()<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> > 6 00007FFC0AA496AD std::invoke<`lambda at C:\ews\work\build\Source\WebKit\Platform\IPC\HandleMessage.h:132:9',WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> > 7 00007FFC0AA4968A std::_Apply_impl<`lambda at C:\ews\work\build\Source\WebKit\Platform\IPC\HandleMessage.h:132:9',std::tuple<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> >,0> 8 00007FFC0AA49652 std::apply<`lambda at C:\ews\work\build\Source\WebKit\Platform\IPC\HandleMessage.h:132:9',std::tuple<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> > > 9 00007FFC0AA48F3F IPC::callMemberFunction<WebKit::NetworkConnectionToWebProcess,WebKit::NetworkConnectionToWebProcess,void (WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0>),std::tuple<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0> > > 10 00007FFC0AA37198 IPC::handleMessage<Messages::NetworkConnectionToWebProcess::RemoveLoadIdentifier,IPC::Connection,WebKit::NetworkConnectionToWebProcess,WebKit::NetworkConnectionToWebProcess,void (WTF::ObjectIdentifierGeneric<WebCore::ResourceLoader,WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>,unsigned long long,0>)> 11 00007FFC0AA2CF7D WebKit::NetworkConnectionToWebProcess::didReceiveMessage 12 00007FFC0B87B2C9 IPC::Connection::dispatchMessage 13 00007FFC0B87B533 IPC::Connection::dispatchMessage 14 00007FFC0B87B83C IPC::Connection::dispatchOneIncomingMessage 15 00007FFC0B88104B IPC::Connection::enqueueIncomingMessage::<lambda_7>::operator() 16 00007FFC0B880FE7 WTF::Detail::CallableWrapper<`lambda at C:\ews\work\build\Source\WebKit\Platform\IPC\Connection.cpp:1354:31',void>::call 17 00007FFC11B4B30C WTF::Function<void ()>::operator() 18 00007FFC12AD47F2 WTF::RunLoop::performWork 19 00007FFC12C6AA18 WTF::RunLoop::wndProc 20 00007FFC12C6A923 WTF::RunLoop::RunLoopWndProc 21 00007FFC6BF4EF5C CallWindowProcW 22 00007FFC6BF4E684 DispatchMessageW 23 00007FFC12C6AC82 WTF::RunLoop::run 24 00007FFC0A7EBB25 WebKit::AuxiliaryProcessMainBase<WebKit::NetworkProcess,0>::run 25 00007FFC0A7EB9E7 WebKit::AuxiliaryProcessMain<WebKit::NetworkProcessMainCurl> 26 00007FFC0A7EB98B WebKit::NetworkProcessMain 27 00007FF738D3101C main 28 00007FF738D313CC __scrt_common_main_seh 29 00007FFC6BD37374 BaseThreadInitThunk 30 00007FFC6C61CC91 RtlUserThreadStart ERROR: 0000017C93A56520 - NetworkProcessProxy::didClose (Network Process crash) C:\ews\work\build\Source\WebKit\UIProcess/Network/NetworkProcessProxy.cpp(477) : virtual void WebKit::NetworkProcessProxy::didClose(IPC::Connection &) NetworkProcess terminated (pid 13436) for reason: crash C:\ews\work\build\Source\WebKit\WebProcess/Network/WebLoaderStrategy.cpp(645) : void WebKit::WebLoaderStrategy::networkProcessCrashed()
Fujii Hironori
Comment 3 2024-09-28 05:24:20 PDT
284324@main introduced Markable for m_serviceWorkerIdentifier of ServiceWorkerFetchTask.
Fujii Hironori
Comment 4 2024-09-28 06:31:49 PDT
This crash is reproducible on my PC. > python .\Tools\Scripts\run-webkit-tests --debug --no-retry --iter=1000 -f --exit-after-n-crash=1 http/wpt/service-workers/fetch-service-worker-preload-use-download-and-clone.https.html It's the previous test of http/wpt/service-workers/fetch-service-worker-preload-use-download.https.html.
Fujii Hironori
Comment 5 2024-09-29 16:48:10 PDT
EWS
Comment 6 2024-09-29 22:55:02 PDT
Committed 284441@main (a249a901e1f6): <https://commits.webkit.org/284441@main> Reviewed commits have been landed. Closing PR #34432 and removing active labels.
Radar WebKit Bug Importer
Comment 7 2024-09-29 22:56:21 PDT
Note You need to log in before you can comment on or make changes to this bug.