WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
219055
[iOS] ASSERTION FAILED: Completion handler should always be called under WebKit::GPUProcess::didReceiveMessage
https://bugs.webkit.org/show_bug.cgi?id=219055
Summary
[iOS] ASSERTION FAILED: Completion handler should always be called under WebK...
Ryan Haddad
Reported
2020-11-17 15:26:44 PST
I'm seeing > 10 GPUProcess crashes on iOS simulator debug bots with the assertion failure below. Some crashes are attributed to tests, others are showing up in the "Other crashes" section. ASSERTION FAILED: Completion handler should always be called !m_function /Volumes/Data/slave/ios-simulator-14-debug/build/WebKitBuild/Debug-iphonesimulator/usr/local/include/wtf/CompletionHandler.h(58) : WTF::CompletionHandler<void ()>::~CompletionHandler() 1 0x123bdfb09 WTFCrash 2 0x111afac97 WTF::CompletionHandler<void ()>::~CompletionHandler() 3 0x111af8235 WTF::CompletionHandler<void ()>::~CompletionHandler() 4 0x112096bde void IPC::handleMessageAsync<Messages::GPUProcess::PrepareToSuspend, WebKit::GPUProcess, void (WebKit::GPUProcess::*)(bool, WTF::CompletionHandler<void ()>&&)>(IPC::Connection&, IPC::Decoder&, WebKit::GPUProcess*, void (WebKit::GPUProcess::*)(bool, WTF::CompletionHandler<void ()>&&)) 5 0x1120963c6 WebKit::GPUProcess::didReceiveMessage(IPC::Connection&, IPC::Decoder&) 6 0x111a2fe6a IPC::Connection::dispatchMessage(IPC::Decoder&) 7 0x111a30fb0 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >) 8 0x111a31640 IPC::Connection::dispatchOneIncomingMessage() 9 0x111a524e8 IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_8::operator()() 10 0x111a523fe WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_8, void>::call() 11 0x123c0b532 WTF::Function<void ()>::operator()() const 12 0x123c89bd5 WTF::RunLoop::performWork() 13 0x123c8e311 WTF::RunLoop::performWork(void*) 14 0x10a55037a __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ 15 0x10a550272 __CFRunLoopDoSource0 16 0x10a54f754 __CFRunLoopDoSources0 17 0x10a549f1f __CFRunLoopRun 18 0x10a5496c6 CFRunLoopRunSpecific 19 0x109f377b9 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] 20 0x109f379cd -[NSRunLoop(NSRunLoop) run] 21 0x10be64176 _xpc_objc_main 22 0x10be66115 xpc_main 23 0x1123e58b2 WebKit::XPCServiceMain(int, char const**) 24 0x11390872b WKXPCServiceMain 25 0x109d68d52 main 26 0x10bb11409 start 27 0x1
https://build.webkit.org/results/Apple-iOS-14-Simulator-Debug-WK2-Tests/r269914%20(725)/results.html
Attachments
Patch
(1.54 KB, patch)
2020-11-17 16:05 PST
,
Chris Dumez
ews-feeder
: commit-queue-
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2020-11-17 15:28:20 PST
<
rdar://problem/71508223
>
Ryan Haddad
Comment 2
2020-11-17 15:29:08 PST
This might be related to
https://trac.webkit.org/changeset/269879/webkit
Chris Dumez
Comment 3
2020-11-17 15:29:34 PST
r269690
did not fix this?
Chris Dumez
Comment 4
2020-11-17 15:30:26 PST
I will investigate shortly. Just surprised because we had those crashes before and I had landed
r269690
for it.
Chris Dumez
Comment 5
2020-11-17 15:32:06 PST
Oh, it is an easy fix. GPUProcess::prepareToSuspend() fails to call its completion handler.
Chris Dumez
Comment 6
2020-11-17 16:05:39 PST
Created
attachment 414393
[details]
Patch
Chris Dumez
Comment 7
2020-11-17 16:42:35 PST
Comment on
attachment 414393
[details]
Patch Clearing flags on attachment: 414393 Committed
r269935
: <
https://trac.webkit.org/changeset/269935
>
Chris Dumez
Comment 8
2020-11-17 16:42:37 PST
All reviewed patches have been landed. Closing bug.
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