Index: src/heap/incremental-marking.cc |
diff --git a/src/heap/incremental-marking.cc b/src/heap/incremental-marking.cc |
index 7ab3bf85c838f4e5456caac328f6b06de227af9d..08f11c62799b314f687f55bad6aeac58c34ff843 100644 |
--- a/src/heap/incremental-marking.cc |
+++ b/src/heap/incremental-marking.cc |
@@ -880,6 +880,12 @@ intptr_t IncrementalMarking::Step(intptr_t allocated_bytes, |
return 0; |
} |
+ // If an idle notification happened recently, we delay marking steps. |
+ if (marking == DO_NOT_FORCE_MARKING && |
+ heap_->RecentIdleNotifcationHappened()) { |
+ return 0; |
+ } |
+ |
if (state_ == MARKING && no_marking_scope_depth_ > 0) return 0; |
intptr_t bytes_processed = 0; |