--- old/src/hotspot/share/gc/shared/referenceProcessor.cpp 2018-04-12 22:00:21.163659928 +0200 +++ new/src/hotspot/share/gc/shared/referenceProcessor.cpp 2018-04-12 22:00:20.657643848 +0200 @@ -794,16 +794,7 @@ phase_times->set_processing_is_mt(mt_processing); - // If discovery used MT and a dynamic number of GC threads, then - // the queues must be balanced for correctness if fewer than the - // maximum number of queues were used. The number of queue used - // during discovery may be different than the number to be used - // for processing so don't depend of _num_q < _max_num_q as part - // of the test. - bool must_balance = _discovery_is_mt; - - if ((mt_processing && ParallelRefProcBalancingEnabled) || - must_balance) { + if (mt_processing && ParallelRefProcBalancingEnabled) { RefProcBalanceQueuesTimeTracker tt(phase_times); balance_queues(refs_lists); }