[webkit-changes] [WebKit/WebKit] 9982d3: Improve launch time of WebKit processes, v2
Per Arne Vollan
noreply at github.com
Thu Oct 12 20:37:56 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9982d3f14c3ba947bb164633635e40b15bdb72fc
https://github.com/WebKit/WebKit/commit/9982d3f14c3ba947bb164633635e40b15bdb72fc
Author: Per Arne Vollan <pvollan at apple.com>
Date: 2023-10-12 (Thu, 12 Oct 2023)
Changed paths:
M Source/WebKit/Configurations/BaseExtension.xcconfig
M Source/WebKit/Platform/ExtraPrivateSymbolsForTAPI.h
A Source/WebKit/Platform/spi/Cocoa/ExtensionKitSPI.h
M Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in
M Source/WebKit/Scripts/process-entitlements.sh
M Source/WebKit/Shared/API/Cocoa/WKMain.h
M Source/WebKit/Shared/API/Cocoa/WKMain.mm
M Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.entitlements
R Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift
M Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.h
M Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.mm
A Source/WebKit/Shared/AuxiliaryProcessExtensions/GPUProcessExtension.swift
A Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingProcessExtension.swift
A Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentProcessExtension.swift
A Source/WebKit/Shared/EntryPointUtilities/Cocoa/ExtensionEventHandler.h
A Source/WebKit/Shared/EntryPointUtilities/Cocoa/ExtensionEventHandler.mm
M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h
M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm
M Source/WebKit/UIProcess/Launcher/ProcessLauncher.h
M Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
Log Message:
-----------
Improve launch time of WebKit processes, v2
https://bugs.webkit.org/show_bug.cgi?id=261966
rdar://115906222
Reviewed by Brent Fulgham.
To benefit of the launch time improvements by launching WebKit processes as extensions, this patch implements
this approach by using ExtensionKit for launching. The feature is currently behind a flags, which is not
being turned on in this patch. The extensions are currently being installed in the WebKit framework.
* Source/WebKit/Configurations/BaseExtension.xcconfig:
* Source/WebKit/Platform/ExtraPrivateSymbolsForTAPI.h:
* Source/WebKit/Platform/spi/Cocoa/ExtensionKitSPI.h: Copied from Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.h.
* Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
* Source/WebKit/Scripts/process-entitlements.sh:
(WKExtensionEventHandler):
* Source/WebKit/Shared/API/Cocoa/WKMain.h:
* Source/WebKit/Shared/API/Cocoa/WKMain.mm:
(WKWebPushToolMain):
(WKExtensionMain): Deleted.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.entitlements:
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.h:
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.mm:
(handleNewConnection):
(extensionMain): Deleted.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/GPUProcessExtension.swift: Copied from Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift.
(GPUProcessExtension.handle(_:)):
* Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingProcessExtension.swift: Copied from Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift.
(NetworkingProcessExtension.handle(_:)):
* Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentProcessExtension.swift: Renamed from Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift.
(WebContentProcessExtension.handle(_:)):
* Source/WebKit/Shared/EntryPointUtilities/Cocoa/ExtensionEventHandler.h:
* Source/WebKit/Shared/EntryPointUtilities/Cocoa/ExtensionEventHandler.mm:
(ExtensionEventHandler):
* Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h:
* Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceEventHandler):
(WebKit::XPCServiceMain):
* Source/WebKit/UIProcess/Launcher/ProcessLauncher.h:
* Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
(WebKit::serviceNameAndIdentifier):
(WebKit::launchWithExtensionKit):
(WebKit::ProcessLauncher::launchProcess):
(WebKit::ProcessLauncher::finishLaunchingProcess):
* Source/WebKit/WebKit.xcodeproj/project.pbxproj:
Canonical link: https://commits.webkit.org/269293@main
More information about the webkit-changes
mailing list