< prev index next >
src/share/vm/gc/g1/concurrentMarkThread.cpp
Print this page
rev 10546 : [mq]: 8077144-concurrent-mark-thread-init-fix
@@ -181,10 +181,15 @@
log_debug(gc, marking)("Restarting Concurrent Marking because of Mark Stack Overflow in Remark (Iteration #%d).", iter);
log_info(gc, marking)("Concurrent Mark Restart due to overflow");
}
} while (cm()->restart_for_overflow());
+ if (!cm()->has_aborted()) {
+ G1ConcPhaseTimer t(_cm, "Concurrent Create Live Data");
+ cm()->create_live_data();
+ }
+
double end_time = os::elapsedVTime();
// Update the total virtual time before doing this, since it will try
// to measure it to get the vtime for this marking. We purposely
// neglect the presumably-short "completeCleanup" phase here.
_vtime_accum = (end_time - _vtime_start);
< prev index next >