[webkit-changes] [WebKit/WebKit] 9590b6: Improve launch time of WebKit processes, v2
Per Arne Vollan
noreply at github.com
Fri Oct 6 07:58:24 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 9590b618193248a44916c41e66a6668cc070e20d
https://github.com/WebKit/WebKit/commit/9590b618193248a44916c41e66a6668cc070e20d
Author: Per Arne Vollan <pvollan at apple.com>
Date: 2023-10-06 (Fri, 06 Oct 2023)
Changed paths:
M Source/WebKit/Configurations/BaseExtension.xcconfig
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
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://problem/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/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:
* Source/WebKit/Shared/API/Cocoa/WKMain.h:
* Source/WebKit/Shared/API/Cocoa/WKMain.mm:
(WKExtensionEventHandler):
(WKExtensionMain): Deleted.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.entitlements: Removed.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift:
(GPUProcessExtension.handle(_:)):
(AuxiliaryProcessExtension.main): Deleted.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.h:
* Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtensionBridge.mm:
(handleNewConnection):
(extensionMain): Deleted.
* Source/WebKit/Shared/AuxiliaryProcessExtensions/GPUProcessExtension.swift: Renamed 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: Copied from Source/WebKit/Shared/AuxiliaryProcessExtensions/AuxiliaryProcessExtension.swift.
(WebContentProcessExtension.handle(_:)):
* 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/268990@main
More information about the webkit-changes
mailing list