Index: src/heap.cc |
diff --git a/src/heap.cc b/src/heap.cc |
index 43c83e40a5aecfd74ed46f00ec678dde9d9436cb..0eb75f4f30f2a95086fa05f128de7244be971fa1 100644 |
--- a/src/heap.cc |
+++ b/src/heap.cc |
@@ -6620,7 +6620,12 @@ bool Heap::ConfigureHeap(int max_semispace_size, |
max_semispace_size_ = RoundUpToPowerOf2(max_semispace_size_); |
reserved_semispace_size_ = RoundUpToPowerOf2(reserved_semispace_size_); |
initial_semispace_size_ = Min(initial_semispace_size_, max_semispace_size_); |
- external_allocation_limit_ = 16 * max_semispace_size_; |
+ |
+ // The external allocation limit should be below 256 MB on all architectures |
+ // to avoid unnecessary low memory notifications, as that is the threshold |
+ // for some embedders. |
+ external_allocation_limit_ = 12 * max_semispace_size_; |
+ ASSERT(external_allocation_limit_ <= 256 * MB); |
// The old generation is paged and needs at least one page for each space. |
int paged_space_count = LAST_PAGED_SPACE - FIRST_PAGED_SPACE + 1; |