commit | b677b79d2626f9007828a1058e2aba48e838022c | [log] [tgz] |
---|---|---|
author | Alex Moshchuk <[email protected]> | Thu Sep 23 22:30:52 2021 |
committer | Chromium LUCI CQ <[email protected]> | Thu Sep 23 22:30:52 2021 |
tree | 22d809faee55e41401ab9413d70087f79823bcc8 | |
parent | 784033b902995b3019c7a6291175c340e7957b59 [diff] |
Separate memory thresholds for strict and partial site isolation. Currently, there is only one memory threshold that applies to any kind of site isolation on Android, whether it's --site-per-process or isolation triggered by password sites, OAuth, etc. This is no longer sufficient as we prepare for trials of strict site isolation on higher-end Android devices, since configuring the threshold intended for --site-per-process via the current field trial param would also affect the already-enabled partial site isolation modes. This CL allows different thresholds to be specified for strict and partial site isolation modes via field trial params. The field trial that controls this is renamed from "site-per-process-only-for-high-memory-clients" to "SiteIsolationMemoryThresholds". For now, it supports two thresholds: - partial_site_isolation_threshold_mb: applies to existing Android modes which isolate a subset of sites, including password-triggered sites, OAuth sites, COOP sites, the built-in isolated sites, and Origin Agent Cluster. - strict_site_isolation_threshold_mb: applies to strict site isolation (--site-per-process) and the finer-grained strict origin isolation. This CL adds a SiteIsolationMode that corresponds to one of the two kinds of site isolation above, and propagates that to SiteIsolationPolicy::ShouldDisableSiteIsolationDueToMemoryThreshold(), which uses that information to apply the proper memory threshold. It also updates various tests to use the appropriate memory threshold depending on the site isolation mode(s) covered in a test. This change is intended primarily for Android. Bug: 1251780 Change-Id: Ie5f27ecd6f67b902efededc6f9715eb9a91f70b4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3176985 Reviewed-by: Bo <[email protected]> Reviewed-by: Ćukasz Anforowicz <[email protected]> Commit-Queue: Alex Moshchuk <[email protected]> Cr-Commit-Position: refs/heads/main@{#924502}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.