0

[PartitionAlloc] Fix test failures on iOS with larger GigaCage

The configurable GigaCage path is used on iOS, with a smaller size used
when a test process is detected. This detection is based on the process
name, and doesn't catch all tests. When detection fails (or this is not
a test process), the code uses the default size, which was bumped to
16GiB in
https://chromium-review.googlesource.com/c/chromium/src/+/3383838. base_unittests
started failing on iOS with this commit in range (see
https://ci.chromium.org/ui/p/chrome/builders/ci/iphone-device/30560/blamelist
for the first failure), so lower the limit back on iOS as well.

Bug: 1350949
Change-Id: I57176dd6d792928f3dfba3406c4733aefd5e8586
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3810350
Reviewed-by: Bartek Nowierski <bartekn@chromium.org>
Commit-Queue: Benoit Lize <lizeb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1032990}
This commit is contained in:
Benoit Lize
2022-08-09 13:29:16 +00:00
committed by Chromium LUCI CQ
parent ac0f748b84
commit e9e6807af1

@ -251,8 +251,11 @@ constexpr size_t kNumPools = 3;
// the actual size, unless PA_USE_DYNAMICALLY_SIZED_GIGA_CAGE is set, which
// allows to choose a different size at initialization time for certain
// configurations.
#if BUILDFLAG(IS_ANDROID)
// Special-case Android, which incurs test failures with larger GigaCage.
//
// Special-case Android and iOS, which incur test failures with larger
// GigaCage. Regardless, allocating >8GiB with malloc() on these platforms is
// unrealistic as of 2022.
#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS)
constexpr size_t kPoolMaxSize = 8 * kGiB;
#else
constexpr size_t kPoolMaxSize = 16 * kGiB;