--- old/src/share/vm/gc/g1/g1CollectedHeap.cpp 2016-02-22 13:40:09.283127368 +0100 +++ new/src/share/vm/gc/g1/g1CollectedHeap.cpp 2016-02-22 13:40:09.167127363 +0100 @@ -3235,10 +3235,6 @@ GCTraceCPUTime tcpu; - uint active_workers = AdaptiveSizePolicy::calc_active_workers(workers()->total_workers(), - workers()->active_workers(), - Threads::number_of_non_daemon_threads()); - workers()->set_active_workers(active_workers); FormatBuffer<> gc_string("Pause "); if (collector_state()->during_initial_mark_pause()) { gc_string.append("Initial Mark"); @@ -3249,6 +3245,11 @@ } GCTraceTime(Info, gc) tm(gc_string, NULL, gc_cause(), true); + uint active_workers = AdaptiveSizePolicy::calc_active_workers(workers()->total_workers(), + workers()->active_workers(), + Threads::number_of_non_daemon_threads()); + workers()->set_active_workers(active_workers); + g1_policy()->note_gc_start(active_workers); TraceCollectorStats tcs(g1mm()->incremental_collection_counters());