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

Reply via email to