8364722: Parallel: Move CLDG mark clearing to the end of full GC

Reviewed-by: tschatzl, zgu
This commit is contained in:
Albert Mingkun Yang 2025-08-06 12:21:16 +00:00
parent 0ceb366dc2
commit 72d1066ae3

View File

@ -685,6 +685,9 @@ void PSParallelCompact::post_compact()
CodeCache::on_gc_marking_cycle_finish();
CodeCache::arm_all_nmethods();
// Need to clear claim bits for the next full-gc (marking and adjust-pointers).
ClassLoaderDataGraph::clear_claimed_marks();
for (unsigned int id = old_space_id; id < last_space_id; ++id) {
// Clear the marking bitmap, summary data and split info.
clear_data_covering_space(SpaceId(id));
@ -1288,9 +1291,6 @@ void PSParallelCompact::marking_phase(ParallelOldTracer *gc_tracer) {
ClassLoaderDataGraph::purge(true /* at_safepoint */);
DEBUG_ONLY(MetaspaceUtils::verify();)
}
// Need to clear claim bits for the next mark.
ClassLoaderDataGraph::clear_claimed_marks();
}
{