RESOLVED FIXED 264178
[Debug] Referencing `m_processPool` in `~WebProcessProxy()` causes a crash
https://bugs.webkit.org/show_bug.cgi?id=264178
Summary [Debug] Referencing `m_processPool` in `~WebProcessProxy()` causes a crash
Vitaly Dyackhov
Reported 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() ```
Attachments
Vitaly Dyackhov
Comment 1 2023-11-03 13:55:19 PDT
EWS
Comment 2 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.
Radar WebKit Bug Importer
Comment 3 2023-11-03 15:23:23 PDT
Note You need to log in before you can comment on or make changes to this bug.