Bug 230693

Summary: [ macOS wk1 ] http/wpt/fetch/navigation-post-to-get-origin.html hits a flaky assertion in invokeReadableStreamDefaultControllerFunction
Product: WebKit Reporter: ayumi_kojima
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, webkit-bot-watchers-bugzilla, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Mac (Intel)   
OS: Unspecified   
Attachments:
Description Flags
Crash log none

Description ayumi_kojima 2021-09-23 09:10:35 PDT
http/wpt/fetch/navigation-post-to-get-origin.html

Is a flaky crash on macOS wk1 Debug.

History: https://results.webkit.org/?suite=layout-tests&test=http%2Fwpt%2Ffetch%2Fnavigation-post-to-get-origin.html

Stderr:

11  0x138fe4a13 WTF::Detail::CallableWrapper<WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData(unsigned char const*, int)::$_7, void, WebCore::ScriptExecutionContext&>::call(WebCore::ScriptExecutionContext&)
12  0x137826fba WTF::Function<void (WebCore::ScriptExecutionContext&)>::operator()(WebCore::ScriptExecutionContext&) const
13  0x1378153bd WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&)
14  0x13a56d4f0 WebCore::WorkerRunLoop::Task::performTask(WebCore::WorkerOrWorkletGlobalScope*)
15  0x13a56cb07 WebCore::WorkerRunLoop::runInMode(WebCore::WorkerOrWorkletGlobalScope*, WebCore::ModePredicate const&, WebCore::WorkerRunLoop::WaitMode)
16  0x13a56b7a8 WebCore::WorkerRunLoop::run(WebCore::WorkerOrWorkletGlobalScope*)
17  0x13a56b748 WebCore::WorkerOrWorkletThread::runEventLoop()
18  0x13a5215a4 WebCore::DedicatedWorkerThread::runEventLoop()
19  0x13a56ba00 WebCore::WorkerOrWorkletThread::workerOrWorkletThread()
20  0x13a58c31b WebCore::WorkerThread::createThread()::$_14::operator()() const
21  0x13a58c2ae WTF::Detail::CallableWrapper<WebCore::WorkerThread::createThread()::$_14, void>::call()
22  0x10f4120c2 WTF::Function<void ()>::operator()() const
23  0x10f4e5528 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*)
24  0x10f4f34d8 WTF::wtfThreadEntryPoint(void*)
25  0x7fff73eb5109 _pthread_start
26  0x7fff73eb0b8b thread_start
Comment 1 Radar WebKit Bug Importer 2021-09-23 09:11:41 PDT
<rdar://problem/83449958>
Comment 2 ayumi_kojima 2021-09-23 10:25:06 PDT
Marked test expectations: https://trac.webkit.org/changeset/282967/webkit
Comment 3 ayumi_kojima 2021-09-23 10:48:15 PDT
Created attachment 439063 [details]
Crash log
Comment 4 Alexey Proskuryakov 2021-09-25 13:37:12 PDT
Thread 32 Crashed:: WebCore: Worker
0   com.apple.JavaScriptCore      	0x000000010f3e49de WTFCrash + 14 (Assertions.cpp:321)
1   com.apple.WebCore             	0x0000000134ff1d7b WTFCrashWithInfo(int, char const*, char const*, int) + 27
2   com.apple.WebCore             	0x0000000137b35015 WebCore::invokeReadableStreamDefaultControllerFunction(JSC::JSGlobalObject&, JSC::Identifier const&, JSC::MarkedArgumentBufferWithSize<8ul> const&) + 213 (ReadableStreamDefaultController.cpp:48)
3   com.apple.WebCore             	0x0000000137b35569 WebCore::ReadableStreamDefaultController::enqueue(JSC::JSValue) + 265 (ReadableStreamDefaultController.cpp:106)
4   com.apple.WebCore             	0x0000000137b3580a WebCore::ReadableStreamDefaultController::enqueue(WTF::RefPtr<JSC::ArrayBuffer, WTF::RawPtrTraits<JSC::ArrayBuffer>, WTF::DefaultRefDerefTraits<JSC::ArrayBuffer> >&&) + 618 (ReadableStreamDefaultController.cpp:128)
5   com.apple.WebCore             	0x000000013702b155 WebCore::FetchBodySource::enqueue(WTF::RefPtr<JSC::ArrayBuffer, WTF::RawPtrTraits<JSC::ArrayBuffer>, WTF::DefaultRefDerefTraits<JSC::ArrayBuffer> >&&) + 53 (FetchBodySource.h:44)
6   com.apple.WebCore             	0x000000013705d2d9 WebCore::FetchResponse::BodyLoader::didReceiveData(unsigned char const*, unsigned long) + 617 (FetchResponse.cpp:373)
7   com.apple.WebCore             	0x00000001370577a7 WebCore::FetchLoader::didReceiveData(unsigned char const*, int) + 71 (FetchLoader.cpp:154)
8   com.apple.WebCore             	0x0000000138fe4c66 WebCore::ThreadableLoaderClientWrapper::didReceiveData(unsigned char const*, int) + 70 (ThreadableLoaderClientWrapper.h:73)
9   com.apple.WebCore             	0x0000000138fe4ba3 WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData(unsigned char const*, int)::$_7::operator()(WebCore::ScriptExecutionContext&) + 211 (WorkerThreadableLoader.cpp:240)
10  com.apple.WebCore             	0x0000000138fe4a13 WTF::Detail::CallableWrapper<WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData(unsigned char const*, int)::$_7, void, WebCore::ScriptExecutionContext&>::call(WebCore::ScriptExecutionContext&) + 51 (Function.h:53)
11  com.apple.WebCore             	0x0000000137826fba WTF::Function<void (WebCore::ScriptExecutionContext&)>::operator()(WebCore::ScriptExecutionContext&) const + 154 (Function.h:82)
12  com.apple.WebCore             	0x00000001378153bd WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&) + 29 (ScriptExecutionContext.h:210)
13  com.apple.WebCore             	0x000000013a56d4f0 WebCore::WorkerRunLoop::Task::performTask(WebCore::WorkerOrWorkletGlobalScope*) + 128 (WorkerRunLoop.cpp:271)
Comment 5 ayumi_kojima 2021-10-11 13:22:15 PDT
I was not able to reproduce the crash locally on BigSur using run-webkit-tests http/wpt/fetch/navigation-post-to-get-origin.html --debug -1 --iterations 100 --exit-after-n-crashes-or-timeouts 1 -f
Comment 6 youenn fablet 2022-05-18 01:32:43 PDT
This is no longer crashing for quite some time according dashboard.
Comment 7 EWS 2022-05-18 02:02:06 PDT
Committed r294386 (250683@main): <https://commits.webkit.org/250683@main>

Reviewed commits have been landed. Closing PR #717 and removing active labels.