Bug 221384

Summary: REGRESSION(r267763) Network process launches earlier than before
Product: WebKit Reporter: Alex Christensen <achristensen>
Component: WebKit APIAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=222713
Attachments:
Description Flags
patch cdumez: review+, cdumez: commit-queue-

Description Alex Christensen 2021-02-03 23:08:32 PST
This is a performance regression in the launch time of apps that use WebKit.
Comment 1 Alex Christensen 2021-02-03 23:22:02 PST
Created attachment 419242 [details]
patch
Comment 2 Chris Dumez 2021-02-04 08:30:23 PST
Comment on attachment 419242 [details]
patch

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

r=me with a comment.

> Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:590
> +    if (!m_networkProcess)

I am not convinced about this particular part of the change. This gets called when the WebProcess finishes launching. I believe we usually have a network process by this point but if we don't, I am not convinced returning early is the right thing to do here. It means we wouldn't send the XPCEndpoint to the process. What makes sure we send the XPC endpoint to the process when the network process actually launches?

I cannot find such logic. Note that there may be a pre-existing bug here when the network process relaunches due to a crash. I am not quite sure what is XPCEndpoint is used for, so maybe it's not a big deal.
Comment 3 Alex Christensen 2021-02-04 09:33:48 PST
You're right.  That's called after WebProcessPool::prewarmProcess which is the point after the app has "launched", which is beyond the point at which we care whether we have delayed the network process launch, and it's also beyond the point at which we can delay the launch any more because we have a web process that is requesting a connection.  I'll omit that part.
Comment 4 Alex Christensen 2021-02-04 10:10:56 PST
http://trac.webkit.org/r272376
Comment 5 Radar WebKit Bug Importer 2021-02-04 10:11:14 PST
<rdar://problem/73986584>