Bug 297346

Summary: [ macOS Tahoe iOS ] workers/message-port-gc.html a near-consistent crash
Product: WebKit Reporter: Karl Rackler <rackler>
Component: DOMAssignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, webkit-bot-watchers-bugzilla, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Karl Rackler
Reported 2025-08-13 11:45:09 PDT
Description: Setting test expectations in preparation for the release of macOS Tahoe and iOS. <rdar://158179134>
Attachments
EWS
Comment 1 2025-08-13 11:56:48 PDT
Test gardening commit 298643@main (66faf50d4fc8): <https://commits.webkit.org/298643@main> Reviewed commits have been landed. Closing PR #49347 and removing active labels.
Alexey Proskuryakov
Comment 2 2025-08-13 14:17:34 PDT
Thread 4081? this test one creates one worker, so this must be leftover threads from some preceding test. But they were supposed to have been closed. Something seems very wrong here. Crashed Thread: 4081 WebCore: Worker Exception Type: EXC_BREAKPOINT (SIGKILL) Exception Codes: 0x0000000000000001, 0x00000001112ba064 ... Thread 4081 Crashed:: WebCore: Worker 0 JavaScriptCore 0x1112ba064 WTF::Thread::create(WTF::ASCIILiteral, WTF::Function<void ()>&&, WTF::ThreadType, WTF::Thread::QOS, WTF::Thread::SchedulingPolicy) + 1100 1 WebCore 0x1205a9204 WebCore::WorkerThread::createThread() + 196 2 WebCore 0x1205a30cc WebCore::WorkerOrWorkletThread::start(WTF::Function<void (WTF::String const&)>&&) + 124 3 WebCore 0x120590d28 WebCore::WorkerMessagingProxy::startWorkerGlobalScope(WTF::URL const&, PAL::SessionID, WTF::String const&, WebCore::WorkerInitializationData&&, WebCore::ScriptBuffer const&, WebCore::ContentSecurityPolicyResponseHeaders const&, bool, WebCore::CrossOriginEmbedderPolicy const&, WTF::MonotonicTime, WebCore::ReferrerPolicy, WebCore::WorkerType, WebCore::FetchOptionsCredentials, JSC::RuntimeFlags) + 1444 4 WebCore 0x120583914 WebCore::Worker::notifyFinished(std::__1::optional<WebCore::ProcessQualified<WTF::UUID>>) + 524 5 WebCore 0x1205b3664 WTF::Detail::CallableWrapper<WebCore::WorkerScriptLoader::didReceiveResponse(WebCore::ProcessQualified<WTF::UUID>, std::__1::optional<WTF::ObjectIdentifierGeneric<WebCore::ResourceLoaderIdentifierType, WTF::ObjectIdentifierThreadSafeAccessTraits<unsigned long long>, unsigned long long>>, WebCore::ResourceResponse const&)::$_0, void, std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&>::call(std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&) + 280 6 WebCore 0x1205f748c WTF::Detail::CallableWrapper<WebCore::WorkerSWClientConnection::matchRegistration(WebCore::SecurityOriginData&&, WTF::URL const&, WTF::CompletionHandler<void (std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)>&&)::$_0::operator()()::'lambda'(std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)::operator()(std::__1::optional<WebCore::ServiceWorkerRegistrationData>&&)::'lambda'(auto&), void, WebCore::ScriptExecutionContext&>::call(WebCore::ScriptExecutionContext&) + 280 7 WebCore 0x1205a4c00 WebCore::WorkerDedicatedRunLoop::Task::performTask(WebCore::WorkerOrWorkletGlobalScope*) + 220 8 WebCore 0x1205a3fe4 WebCore::WorkerDedicatedRunLoop::runInMode(WebCore::WorkerOrWorkletGlobalScope*, WebCore::ModePredicate const&) + 840 9 WebCore 0x1205a1c94 WebCore::WorkerDedicatedRunLoop::run(WebCore::WorkerOrWorkletGlobalScope*) + 160 10 WebCore 0x1205a1b74 WebCore::WorkerOrWorkletThread::runEventLoop() + 100 11 WebCore 0x1205a245c WebCore::WorkerOrWorkletThread::workerOrWorkletThread() + 560 12 JavaScriptCore 0x1112b9b48 WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) + 260 13 JavaScriptCore 0x11108e930 WTF::wtfThreadEntryPoint(void*) + 16 14 libsystem_pthread.dylib 0x19fb58c08 _pthread_start + 136 15 libsystem_pthread.dylib 0x19fb53ba8 thread_start + 8
Alexey Proskuryakov
Comment 3 2025-08-13 14:20:55 PDT
I see in a discussion that this reproduces with just this test, and with --run-singly. Are we creating a new thread for every postMessage, or am I completely misreading this test?
Chris Dumez
Comment 4 2025-09-17 18:03:18 PDT
EWS
Comment 5 2025-09-17 18:05:45 PDT
Committed 300127@main (e2ece51cdf89): <https://commits.webkit.org/300127@main> Reviewed commits have been landed. Closing PR #50906 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.