Bug 217730 - REGRESSION(r268423) SHOULD NEVER BE REACHED: GPUConnectionToWebProcess::didReceiveMessage(IPC::Connection &, IPC::Decoder &)
Summary: REGRESSION(r268423) SHOULD NEVER BE REACHED: GPUConnectionToWebProcess::didRe...
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Chris Dumez
Keywords: InRadar
Depends on:
Reported: 2020-10-14 14:22 PDT by Hector Lopez
Modified: 2020-10-14 17:09 PDT (History)
7 users (show)

See Also:

Patch (7.11 KB, patch)
2020-10-14 15:40 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff
Patch (7.12 KB, patch)
2020-10-14 16:19 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Hector Lopez 2020-10-14 14:22:23 PDT

Test is a constant crash according to history on macOS and iOS Debug. First occurrence of a crash is at r268423 for iOS and has also been a flaky timeout. First occurrence of a crash on macOS is at r268431 but may be due to a lack of results from r268421.



stderr log:

/Volumes/Data/slave/ios-simulator-14-debug/build/WebKitBuild/Debug-iphonesimulator/DerivedSources/WebKit2/GPUConnectionToWebProcessMessageReceiver.cpp(96) : virtual void WebKit::GPUConnectionToWebProcess::didReceiveMessage(IPC::Connection &, IPC::Decoder &)
1   0x11f1bbe89 WTFCrash
2   0x10d1cc10b WTFCrashWithInfo(int, char const*, char const*, int)
3   0x10d5e9725 WebKit::GPUConnectionToWebProcess::didReceiveMessage(IPC::Connection&, IPC::Decoder&)
4   0x10d24127f IPC::Connection::dispatchMessage(IPC::Decoder&)
5   0x10d241bd0 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)
6   0x10d242260 IPC::Connection::dispatchOneIncomingMessage()
7   0x10d260cf8 IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_7::operator()()
8   0x10d260c0e WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(std::__1::unique_ptr<IPC::Decoder, std::__1::default_delete<IPC::Decoder> >)::$_7, void>::call()
9   0x11f1e75a2 WTF::Function<void ()>::operator()() const
10  0x11f264f05 WTF::RunLoop::performWork()
11  0x11f269641 WTF::RunLoop::performWork(void*)
13  0x108ca373d __CFRunLoopDoSource0
14  0x108ca2c1f __CFRunLoopDoSources0
15  0x108c9d3f7 __CFRunLoopRun
16  0x108c9cb9e CFRunLoopRunSpecific
17  0x10868ce61 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
18  0x10868d075 -[NSRunLoop(NSRunLoop) run]
19  0x10a5d0506 _xpc_objc_main
20  0x10a5d24aa xpc_main
21  0x10da66ad5 WebKit::XPCServiceMain(int, char const**)
22  0x10ef4fbdb WKXPCServiceMain
23  0x1084bdd62 main
24  0x10a264415 start
LEAK: 2 WebPageProxy
Comment 1 Radar WebKit Bug Importer 2020-10-14 14:23:01 PDT
Comment 2 Chris Dumez 2020-10-14 14:51:11 PDT
It appears the IPC message that is not handled is RemoteAudioMediaStreamTrackRenderer::SetVolume. At first sight, I don't see a direct link to my change.
Comment 3 Chris Dumez 2020-10-14 14:55:29 PDT
Ok. I think I know what's going on.
Comment 4 Chris Dumez 2020-10-14 15:40:42 PDT
Created attachment 411380 [details]
Comment 5 Peng Liu 2020-10-14 16:08:20 PDT
Comment on attachment 411380 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=411380&action=review

> Source/WebKit/ChangeLog:25
> +        good to have consistency between all kinds of receivers.

Good fix!

> Source/WebKit/Platform/IPC/Connection.cpp:1013
> +    // First check if there is a global message receiver and return it there is one.

s/it there is one/it if there is one/
Comment 6 Chris Dumez 2020-10-14 16:19:09 PDT
Created attachment 411384 [details]
Comment 7 Geoffrey Garen 2020-10-14 16:33:26 PDT
Comment on attachment 411384 [details]

Comment 8 EWS 2020-10-14 17:09:23 PDT
Committed r268500: <https://trac.webkit.org/changeset/268500>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 411384 [details].