Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 61e4908945f721505bf6b404648679836ba5a7ae
https://github.com/WebKit/WebKit/commit/61e4908945f721505bf6b404648679836ba5a7ae
Author: Per Arne Vollan <[email protected]>
Date: 2026-02-19 (Thu, 19 Feb 2026)
Changed paths:
M Source/WebKit/UIProcess/WebProcessCache.cpp
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
M Tools/MiniBrowser/mac/AppDelegate.m
Log Message:
-----------
Add flag to indicate whether WebContent processes can be cached
https://bugs.webkit.org/show_bug.cgi?id=308107
rdar://170608299
Reviewed by Basuke Suzuki.
This patch is using this flag to prevent WebContent processes for COOP swaps to
enter the process cache,
since the process cache is per site, and COOP swaps are based on origin. We are
already not taking
processes from the cache on COOP swaps, so we should not add processes for
these swaps to the cache
either.
Additionally, this patch prevents service workers from taking WebContent
processes from the cache, since
we should reserve the cache for standard loads for performance reasons. If a
service worker has taken
a WebContent process from the cache, a load for the same site will not be able
to use an earlier process
used for this site, and will have to use a prewarmed one or start a new one.
This wil make the load
significantly slower.
Combined, these two changes represents a nice improvement in page load time
with Site Isolation enabled,
which has been confirmed in measurements.
Finally, this patch also enables the process cache for MiniBrowser.
* Source/WebKit/UIProcess/WebProcessCache.cpp:
(WebKit::WebProcessCache::canCacheProcess const):
(WebKit::WebProcessCache::addProcess):
(WebKit::WebProcessCache::takeProcess):
(WebKit::WebProcessCache::takeSharedProcess):
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processForSite):
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Tools/MiniBrowser/mac/AppDelegate.m:
(-[BrowserAppDelegate defaultConfiguration]):
Canonical link: https://commits.webkit.org/307859@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications