summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Lokesh Gidra <lokeshgidra@google.com> 2025-03-03 07:54:46 -0800
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2025-03-03 07:54:46 -0800
commit859321f454e38ee50882978f1714b89ea116138c (patch)
treef0ecfb565e89131ef077d6412b1d6e9097412276
parent26256cb91bed2730aa63166380ec7d55d5aa5678 (diff)
parentb4aac73b2db58d2cc834314498b053e9e5683bbc (diff)
Age dirty cards in MarkingPause for full GCs as well am: 88310308d9 am: b4aac73b2d
Original change: https://android-review.googlesource.com/c/platform/art/+/3518793 Change-Id: I9fdc4225aa3c8d450f3681069dfd19b57417ee5a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--runtime/gc/collector/mark_compact.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/runtime/gc/collector/mark_compact.cc b/runtime/gc/collector/mark_compact.cc
index 1f2e911b8e..1f55013315 100644
--- a/runtime/gc/collector/mark_compact.cc
+++ b/runtime/gc/collector/mark_compact.cc
@@ -4343,8 +4343,9 @@ void MarkCompact::ScanDirtyObjects(bool paused, uint8_t minimum_age) {
break;
}
TimingLogger::ScopedTiming t(name, GetTimings());
- if (paused && young_gen_ &&
+ if (paused && use_generational_ &&
space->GetGcRetentionPolicy() == space::kGcRetentionPolicyAlwaysCollect) {
+ DCHECK_EQ(minimum_age, accounting::CardTable::kCardDirty);
auto mod_visitor = [](uint8_t* card, uint8_t cur_val) {
DCHECK_EQ(cur_val, accounting::CardTable::kCardDirty);
*card = accounting::CardTable::kCardAged;