Bug 264178 - [Debug] Referencing `m_processPool` in `~WebProcessProxy()` causes a crash
Summary: [Debug] Referencing `m_processPool` in `~WebProcessProxy()` causes a crash
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Process Model (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-11-03 13:41 PDT by Vitaly Dyackhov
Modified: 2023-11-03 15:23 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vitaly Dyackhov 2023-11-03 13:41:25 PDT
```
ASSERTION FAILED: !m_deletionHasBegun
/app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/ThreadSafeRefCounted.h(58) : void WTF::ThreadSafeRefCountedBase::ref() const
1   0x7ff48aca7f6d WTFCrash
2   0x7ff48aca7f83 WTFIsDebuggerAttached
3   0x7ff4870494c5 WTF::ThreadSafeRefCountedBase::ref() const
4   0x7ff488144c83 WTF::DefaultRefDerefTraits<WebKit::WebProcessPool>::refIfNotNull(WebKit::WebProcessPool*)
5   0x7ff488132034 WTF::RefPtr<WebKit::WebProcessPool, WTF::RawPtrTraits<WebKit::WebProcessPool>, WTF::DefaultRefDerefTraits<WebKit::WebProcessPool> >::RefPtr(WebKit::WebProcessPool*)
6   0x7ff4880f89eb WebKit::WebProcessProxy::~WebProcessProxy()
7   0x7ff4880f8e98 WebKit::WebProcessProxy::~WebProcessProxy()
8   0x7ff4873caa9a WTF::ThreadSafeRefCounted<WebKit::AuxiliaryProcessProxy, (WTF::DestructionThread)2>::deref() const::{lambda()#1}::operator()() const
9   0x7ff4873dbaf6 WTF::Detail::CallableWrapper<WTF::ThreadSafeRefCounted<WebKit::AuxiliaryProcessProxy, (WTF::DestructionThread)2>::deref() const::{lambda()#1}, void>::call()
10  0x7ff4878f1083 WTF::Function<void ()>::operator()() const
11  0x7ff48ad147b2 WTF::ensureOnMainRunLoop(WTF::Function<void ()>&&)
12  0x7ff4873caafe WTF::ThreadSafeRefCounted<WebKit::AuxiliaryProcessProxy, (WTF::DestructionThread)2>::deref() const
13  0x7ff4873ca8ce WebKit::AuxiliaryProcessProxy::deref()
14  0x7ff487f734c6 WTF::DefaultRefDerefTraits<WebKit::WebProcessProxy>::derefIfNotNull(WebKit::WebProcessProxy*)
15  0x7ff487f6a1e0 WTF::RefPtr<WebKit::WebProcessProxy, WTF::RawPtrTraits<WebKit::WebProcessProxy>, WTF::DefaultRefDerefTraits<WebKit::WebProcessProxy> >::~RefPtr()
16  0x7ff4880e94a0 WebKit::WebProcessCache::CachedProcess::~CachedProcess()
17  0x7ff48813909a std::default_delete<WebKit::WebProcessCache::CachedProcess>::operator()(WebKit::WebProcessCache::CachedProcess*) const
18  0x7ff488127c58 std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >::~unique_ptr()
19  0x7ff488138e44 WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >::~KeyValuePair()
20  0x7ff488138eac WTF::HashTable<WebCore::RegistrableDomain, WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::HashTableTraits>::KeyValuePairTraits, WTF::HashTraits<WebCore::RegistrableDomain> >::deallocateTable(WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >*)
21  0x7ff48813a13c WTF::HashTable<WebCore::RegistrableDomain, WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > > >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::HashTableTraits>::KeyValuePairTraits, WTF::HashTraits<WebCore::RegistrableDomain> >::clear()
22  0x7ff4881284c6 WTF::HashMap<WebCore::RegistrableDomain, std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> >, WTF::DefaultHash<WebCore::RegistrableDomain>, WTF::HashTraits<WebCore::RegistrableDomain>, WTF::HashTraits<std::unique_ptr<WebKit::WebProcessCache::CachedProcess, std::default_delete<WebKit::WebProcessCache::CachedProcess> > >, WTF::HashTableTraits>::clear()
23  0x7ff4880e855f WebKit::WebProcessCache::clear()
24  0x7ff4880ea5ee WebKit::WebProcessPool::~WebProcessPool()
25  0x7ff4880eada8 WebKit::WebProcessPool::~WebProcessPool()
26  0x7ff48704a372 WTF::ThreadSafeRefCounted<API::Object, (WTF::DestructionThread)0>::deref() const::{lambda()#1}::operator()() const
27  0x7ff48704a3b9 WTF::ThreadSafeRefCounted<API::Object, (WTF::DestructionThread)0>::deref() const
28  0x7ff4873c24ff WTF::Ref<WebKit::WebProcessPool, WTF::RawPtrTraits<WebKit::WebProcessPool> >::~Ref()
```
Comment 1 Vitaly Dyackhov 2023-11-03 13:55:19 PDT
Pull request: https://github.com/WebKit/WebKit/pull/19971
Comment 2 EWS 2023-11-03 15:22:27 PDT
Committed 270209@main (0015b1710296): <https://commits.webkit.org/270209@main>

Reviewed commits have been landed. Closing PR #19971 and removing active labels.
Comment 3 Radar WebKit Bug Importer 2023-11-03 15:23:23 PDT
<rdar://problem/117924551>