--- old/src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp 2016-06-07 17:31:38.329732940 -0700 +++ new/src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp 2016-06-07 17:31:38.205732944 -0700 @@ -708,8 +708,6 @@ for (uint i = 0; i < ParallelGCThreads; i++) { _par_gc_thread_states[i]->promo.reset(); } - // No longer a need to do a concurrent collection for Metaspace. - MetaspaceGC::set_should_concurrent_collect(false); } void ConcurrentMarkSweepGeneration::compute_new_size() { @@ -1605,6 +1603,9 @@ _inter_sweep_timer.reset(); _inter_sweep_timer.start(); + // No longer a need to do a concurrent collection for Metaspace. + MetaspaceGC::set_should_concurrent_collect(false); + gch->post_full_gc_dump(gc_timer); gc_timer->register_gc_end();