RESOLVED FIXED 259287
RELEASE_ASSERT(isSuspensionImminent == IsSuspensionImminent::Yes) under ProcessThrottler::sendPrepareToSuspendIPC()
https://bugs.webkit.org/show_bug.cgi?id=259287
Summary RELEASE_ASSERT(isSuspensionImminent == IsSuspensionImminent::Yes) under Proce...
Chris Dumez
Reported 2023-07-17 12:15:58 PDT
RELEASE_ASSERT(isSuspensionImminent == IsSuspensionImminent::Yes) under ProcessThrottler::sendPrepareToSuspendIPC(): 14 WTFCrashWithInfo(int, char const*, char const*, int) ==> 14 WebKit::ProcessThrottler::sendPrepareToSuspendIPC(WebKit::IsSuspensionImminent) <== 14 WebKit::ProcessThrottler::removeActivity(WebKit::ProcessThrottlerActivity&) 14 WebKit::ProcessThrottlerActivity::invalidate() 14 WebKit::ProcessThrottlerActivity::~ProcessThrottlerActivity() 14 WebKit::ProcessThrottlerActivity::~ProcessThrottlerActivity() 14 std::__1::default_delete<WebKit::ProcessThrottlerActivity>::operator()[abi:v160002](WebKit::ProcessThrottlerActivity*) const 14 std::__1::unique_ptr<WebKit::ProcessThrottlerActivity, std::__1::default_delete<WebKit::ProcessThrottlerActivity> >::reset[abi:v160002](WebKit::ProcessThrottlerActivity*) 14 decltype(auto) std::__1::__variant_detail::__visitation::__base::__visit_alt_at[abi:v160002]<void std::__1::__variant_detail::__assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> > >::__generic_assign[abi:v160002]<std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1> >(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&&)::'lambda'(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&, auto&&), std::__1::__variant_detail::__assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> > >&, std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1> >(unsigned long, std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&&, void std::__1::__variant_detail::__assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> > >::__generic_assign[abi:v160002]<std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1> >(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&&)::'lambda'(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&, auto&&)&&...) 14 void std::__1::__variant_detail::__assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> > >::__generic_assign[abi:v160002]<std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1> >(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&&) 14 std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>::operator=(std::__1::__variant_detail::__move_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)1>&&) 14 std::__1::__variant_detail::__copy_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)2>::operator=(std::__1::__variant_detail::__copy_assignment<std::__1::__variant_detail::__traits<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >, (std::__1::__variant_detail::_Trait)2>&&) 14 std::__1::__variant_detail::__impl<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >::operator=(std::__1::__variant_detail::__impl<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >&&) 14 std::__1::variant<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >::operator=(std::__1::variant<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >&&) 14 WebKit::ProcessThrottlerTimedActivity::operator=(std::__1::variant<std::nullptr_t, WTF::UniqueRef<WebKit::ProcessThrottlerActivity> >&&) 14 WebKit::AuxiliaryProcessProxy::wakeUpTemporarilyForIPC() 14 WebKit::AuxiliaryProcessProxy::didFinishLaunching(WebKit::ProcessLauncher*, IPC::Connection::Identifier)::$_6::operator()() const 14 WTF::Detail::CallableWrapper<WebKit::AuxiliaryProcessProxy::didFinishLaunching(WebKit::ProcessLauncher*, IPC::Connection::Identifier)::$_6, void>::call() 14 WTF::Function<void ()>::operator()() const 14 IPC::Connection::sendMessage(WTF::UniqueRef<IPC::Encoder>&&, WTF::OptionSet<IPC::SendOption>, std::__1::optional<WTF::Thread::QOS>) 14 IPC::Connection::sendMessageWithAsyncReply(WTF::UniqueRef<IPC::Encoder>&&, IPC::ConnectionAsyncReplyHandler, WTF::OptionSet<IPC::SendOption>, std::__1::optional<WTF::Thread::QOS>) 14 WebKit::AuxiliaryProcessProxy::sendMessage(WTF::UniqueRef<IPC::Encoder>&&, WTF::OptionSet<IPC::SendOption>, std::__1::optional<IPC::ConnectionAsyncReplyHandler>, WebKit::AuxiliaryProcessProxy::ShouldStartProcessThrottlerActivity) 14 WTF::ObjectIdentifierGeneric<IPC::AsyncReplyIDType, WTF::ObjectIdentifierThreadSafeAccessTraits> WebKit::AuxiliaryProcessProxy::sendWithAsyncReply<Messages::WebProcess::PrepareToSuspend, WTF::CompletionHandler<void ()> >(Messages::WebProcess::PrepareToSuspend&&, WTF::CompletionHandler<void ()>&&, unsigned long long, WTF::OptionSet<IPC::SendOption>, WebKit::AuxiliaryProcessProxy::ShouldStartProcessThrottlerActivity) 14 WebKit::WebProcessProxy::sendPrepareToSuspend(WebKit::IsSuspensionImminent, double, WTF::CompletionHandler<void ()>&&) 14 WebKit::ProcessThrottler::sendPrepareToSuspendIPC(WebKit::IsSuspensionImminent) 14 WebKit::ProcessThrottler::removeActivity(WebKit::ProcessThrottlerActivity&) 14 WebKit::ProcessThrottlerActivity::invalidate() 14 WebKit::ProcessThrottler::invalidateAllActivities() 14 WebKit::ProcessThrottler::setAllowsActivities(bool) 14 WebKit::WebProcessPool::setProcessesShouldSuspend(bool)
Attachments
Chris Dumez
Comment 1 2023-07-17 12:16:06 PDT
Chris Dumez
Comment 2 2023-07-17 12:32:42 PDT
EWS
Comment 3 2023-07-17 15:30:01 PDT
Committed 266113@main (30bf9977849a): <https://commits.webkit.org/266113@main> Reviewed commits have been landed. Closing PR #15890 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.