WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
283445
[macOS Debug wk2] ASSERTION FAILED: !m_messageReceiverMapCount in webrtc tests
https://bugs.webkit.org/show_bug.cgi?id=283445
Summary
[macOS Debug wk2] ASSERTION FAILED: !m_messageReceiverMapCount in webrtc tests
Marta Darbinyan
Reported
2024-11-20 14:41:18 PST
The following test is a consistent crash on macOS and false positive on EWS. webrtc/vp8-then-h264.html The assertion started within the range of
286802@main
change. stderr: ASSERTION FAILED: !m_messageReceiverMapCount /Volumes/Data/worker/Apple-Sequoia-Debug-Build/build/Source/WebKit/Platform/IPC/MessageReceiver.h(50) : virtual IPC::MessageReceiver::~MessageReceiver() 1 0x42bec5c10 IPC::MessageReceiver::~MessageReceiver() 2 0x42e425ff1 WebKit::RemoteRemoteCommandListener::~RemoteRemoteCommandListener() 3 0x42e426115 WebKit::RemoteRemoteCommandListener::~RemoteRemoteCommandListener() 4 0x42e0e51a6 void WTF::ThreadSafeWeakPtrControlBlock::strongDeref<WebKit::RemoteRemoteCommandListener, (WTF::DestructionThread)0>() const::'lambda'()::operator()() const 5 0x42e0e5055 void WTF::ThreadSafeWeakPtrControlBlock::strongDeref<WebKit::RemoteRemoteCommandListener, (WTF::DestructionThread)0>() const 6 0x42e0e4e39 WTF::ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr<WebKit::RemoteRemoteCommandListener, (WTF::DestructionThread)0>::deref() const 7 0x42e0e4d29 WebKit::RemoteRemoteCommandListener::deref() const 8 0x48780906f WTF::DefaultRefDerefTraits<WebCore::RemoteCommandListener>::derefIfNotNull(WebCore::RemoteCommandListener*) 9 0x4878037e1 WTF::RefPtr<WebCore::RemoteCommandListener, WTF::RawPtrTraits<WebCore::RemoteCommandListener>, WTF::DefaultRefDerefTraits<WebCore::RemoteCommandListener>>::operator=(std::nullptr_t) 10 0x48780368a WebCore::NowPlayingManager::removeClient(WebCore::NowPlayingManagerClient&) 11 0x483f136ca WebCore::MediaSessionManagerCocoa::removeSession(WebCore::PlatformMediaSession&) 12 0x4878b9775 WebCore::PlatformMediaSession::stopSession() 13 0x4869cd87b WebCore::HTMLMediaElement::stop() 14 0x486a924f9 WebCore::HTMLVideoElement::stop() 15 0x48660f0ea _ZZN7WebCore22ScriptExecutionContext20stopActiveDOMObjectsEvENK3$_0clINS_15ActiveDOMObjectEEEDaRT_ 16 0x48660f0a1 WTF::Detail::CallableWrapper<WebCore::ScriptExecutionContext::stopActiveDOMObjects()::$_0, WebCore::ScriptExecutionContext::ShouldContinue, WebCore::ActiveDOMObject&>::call(WebCore::ActiveDOMObject&) 17 0x4865ef74f WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject&)>::operator()(WebCore::ActiveDOMObject&) const 18 0x4865ef585 WebCore::ScriptExecutionContext::forEachActiveDOMObject(WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject&)> const&) const 19 0x4865efd84 WebCore::ScriptExecutionContext::stopActiveDOMObjects() 20 0x486343125 WebCore::Document::stopActiveDOMObjects() 21 0x486342aef WebCore::Document::commonTeardown() 22 0x486357f4a WebCore::Document::willBeRemovedFromFrame() 23 0x4874b393d WebCore::LocalFrame::setView(WTF::RefPtr<WebCore::LocalFrameView, WTF::RawPtrTraits<WebCore::LocalFrameView>, WTF::DefaultRefDerefTraits<WebCore::LocalFrameView>>&&) 24 0x4874b8761 WebCore::LocalFrame::createView(WebCore::IntSize const&, std::__1::optional<WebCore::Color> const&, WebCore::IntSize const&, bool, WebCore::ScrollbarMode, bool, WebCore::ScrollbarMode, bool) 25 0x42e76db9c WebKit::WebLocalFrameLoaderClient::transitionToCommittedForNewPage(WebCore::LocalFrameLoaderClient::InitializingIframe) 26 0x4871b7bbe WebCore::FrameLoader::transitionToCommitted(WebCore::CachedPage*) 27 0x4871b62eb WebCore::FrameLoader::commitProvisionalLoad() 28 0x4871381cf WebCore::DocumentLoader::commitIfReady() 29 0x4871389d6 WebCore::DocumentLoader::finishedLoading() 30 0x487148018 WebCore::DocumentLoader::maybeLoadEmpty() 31 0x48714838b WebCore::DocumentLoader::startLoadingMainResource() com.apple.WebKit.WebContent.Development terminated (pid 48336) for reason: crash LEAK: 1 WebPageProxy Link:
https://build.webkit.org/results/Apple-Sequoia-Debug-WK2-Tests/286803@main%20(393)/results.html
History:
https://results.webkit.org/?flavor=wk2&platform=mac&suite=layout-tests&test=webrtc%2Fvp8-then-h264.html&style=debug
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2024-11-20 14:45:57 PST
<
rdar://problem/140302668
>
EWS
Comment 2
2024-11-20 15:35:25 PST
Test gardening commit
286878@main
(e26eb9493ca3): <
https://commits.webkit.org/286878@main
> Reviewed commits have been landed. Closing PR #36922 and removing active labels.
Marta Darbinyan
Comment 3
2024-11-20 16:39:37 PST
Update: The assertion started within the range of
286800@main
change.
Philippe Normand
Comment 4
2024-11-21 00:24:38 PST
I don't think
286800@main
is the culprit, it's specific to Linux ports.
Marta Darbinyan
Comment 5
2024-11-21 12:18:45 PST
Looks like another test started failing with same assertion in webrtc after gardening. ``` worker/0 webrtc/vp8-then-h264.html crashed, (stderr lines): 17:22:08.102 1058 worker/0 ASSERTION FAILED: !m_messageReceiverMapCount 17:22:08.102 1058 worker/0 /Volumes/Data/worker/macOS-Sequoia-Debug-Build-EWS/build/Source/WebKit/Platform/IPC/MessageReceiver.h(50) : virtual IPC::MessageReceiver::~MessageReceiver() 17:22:08.102 1058 worker/0 1 0x11a64f800 IPC::MessageReceiver::~MessageReceiver() 17:22:08.102 1058 worker/0 2 0x11cc13148 WebKit::RemoteRemoteCommandListener::~RemoteRemoteCommandListener() 17:22:08.102 1058 worker/0 3 0x11cc132a4 WebKit::RemoteRemoteCommandListener::~RemoteRemoteCommandListener() 17:22:08.102 1058 worker/0 4 0x11c8a6d54 void WTF::ThreadSafeWeakPtrControlBlock::strongDeref<WebKit::RemoteRemoteCommandListener, (WTF::DestructionThread)0>() const::'lambda'()::operator()() const ``` This assertion could be caused by the test that ran before it. webrtc/vp8-then-h264-gpu-process-crash.html.
EWS
Comment 6
2024-11-21 13:23:42 PST
Test gardening commit
286922@main
(f20a42cd4e52): <
https://commits.webkit.org/286922@main
> Reviewed commits have been landed. Closing PR #36972 and removing active labels.
Marta Darbinyan
Comment 7
2024-11-21 16:16:05 PST
We could reproduce the crash by running three webrtc tests together. webrtc/video.html webrtc/vp8-then-h264-gpu-process-crash.html webrtc/vp8-then-h264.html The tests are passing when they are tested separately from each other, so something in combination of three triggers this crash. Here is the narrowed down range when the crash occurred.
286802@main
- Failed
286795@main
- Passed Range of the suspected changes:
https://commits.webkit.org/compare/286795@main...286802@main
Command to reproduce: run-webkit-tests --root —debug --force --iterations=1 webrtc/video.html webrtc/vp8-then-h264-gpu-process-crash.html webrtc/vp8-then-h264.html
EWS
Comment 8
2024-11-22 10:18:08 PST
Committed
286967@main
(bbf8a24839a0): <
https://commits.webkit.org/286967@main
> Reviewed commits have been landed. Closing PR #37013 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug