RESOLVED FIXED Bug 201299
Move MessageRegistry to NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=201299
Summary Move MessageRegistry to NetworkProcess
youenn fablet
Reported 2019-08-29 05:34:23 PDT
This will remove unnecessary hops for service worker messages.
Attachments
Patch (131.92 KB, patch)
2019-08-29 05:53 PDT, youenn fablet
no flags
Patch (67.71 KB, patch)
2019-09-02 06:14 PDT, youenn fablet
no flags
Patch (68.62 KB, patch)
2019-09-02 09:02 PDT, youenn fablet
no flags
Patch for landing (70.49 KB, patch)
2019-09-04 03:46 PDT, youenn fablet
no flags
youenn fablet
Comment 1 2019-08-29 05:53:39 PDT
youenn fablet
Comment 2 2019-09-02 06:14:01 PDT
youenn fablet
Comment 3 2019-09-02 09:02:07 PDT
youenn fablet
Comment 4 2019-09-03 04:16:49 PDT
Only downside is that, currently, on network process crash, the registry information is gone and would need to be rebuilt on network process crash recovery.
youenn fablet
Comment 5 2019-09-03 04:18:35 PDT
Comment on attachment 377853 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=377853&action=review > Source/WebKit/UIProcess/API/APIContextMenuElementInfo.h:35 > +#include <wtf/RetainPtr.h> here and below: unified build fix apparently.
Alex Christensen
Comment 6 2019-09-03 14:23:28 PDT
Comment on attachment 377853 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=377853&action=review > Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:962 > +void NetworkConnectionToWebProcess::checkRemotePortForActivity(const WebCore::MessagePortIdentifier port, CompletionHandler<void(bool)>&& callback) It would make things a bit cleaner to make this CompletionHandler<void(HasActivity)> > Source/WebKit/NetworkProcess/NetworkMessagePortChannelProvider.cpp:68 > + // Should never be called in the UI process provider. > + ASSERT_NOT_REACHED(); Can we remove all these? Could we at least write code that calls the CompletionHandlers?
youenn fablet
Comment 7 2019-09-03 23:15:27 PDT
(In reply to Alex Christensen from comment #6) > Comment on attachment 377853 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=377853&action=review > > > Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:962 > > +void NetworkConnectionToWebProcess::checkRemotePortForActivity(const WebCore::MessagePortIdentifier port, CompletionHandler<void(bool)>&& callback) > > It would make things a bit cleaner to make this > CompletionHandler<void(HasActivity)> OK > > Source/WebKit/NetworkProcess/NetworkMessagePortChannelProvider.cpp:68 > > + // Should never be called in the UI process provider. > > + ASSERT_NOT_REACHED(); > > Can we remove all these? > Could we at least write code that calls the CompletionHandlers? Patch at bug 201400 will fix this.
youenn fablet
Comment 8 2019-09-04 03:46:12 PDT
Created attachment 377969 [details] Patch for landing
WebKit Commit Bot
Comment 9 2019-09-04 05:46:32 PDT
Comment on attachment 377969 [details] Patch for landing Clearing flags on attachment: 377969 Committed r249479: <https://trac.webkit.org/changeset/249479>
WebKit Commit Bot
Comment 10 2019-09-04 05:46:33 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 11 2019-09-04 05:47:19 PDT
Alex Christensen
Comment 12 2019-11-22 11:35:35 PST
Comment on attachment 377969 [details] Patch for landing View in context: https://bugs.webkit.org/attachment.cgi?id=377969&action=review > Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:945 > + auto callback = m_messageBatchDeliveryCompletionHandlers.take(messageBatchIdentifier); > + ASSERT(callback); > + callback(); This caused https://bugs.webkit.org/show_bug.cgi?id=204460
Note You need to log in before you can comment on or make changes to this bug.