--- old/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp 2015-02-27 15:19:09.618465615 +0100 +++ new/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp 2015-02-27 15:19:09.514465619 +0100 @@ -4656,13 +4656,11 @@ // During conc marking we have to filter the per-thread SATB buffers // to make sure we remove any oops into the CSet (which will show up // as implicitly live). - if (mark_in_progress()) { - if (!_process_strong_tasks->is_task_claimed(G1H_PS_filter_satb_buffers)) { - G1GCPhaseTimesTracker x(g1_policy()->phase_times(), G1GCPhaseTimes::SATBFiltering, worker_i); - JavaThread::satb_mark_queue_set().filter_thread_buffers(); - } else { - g1_policy()->phase_times()->record_time(G1GCPhaseTimes::SATBFiltering, worker_i, 0.0); - } + if (mark_in_progress() && !_process_strong_tasks->is_task_claimed(G1H_PS_filter_satb_buffers)) { + G1GCPhaseTimesTracker x(g1_policy()->phase_times(), G1GCPhaseTimes::SATBFiltering, worker_i); + JavaThread::satb_mark_queue_set().filter_thread_buffers(); + } else { + g1_policy()->phase_times()->record_time(G1GCPhaseTimes::SATBFiltering, worker_i, 0.0); } // Now scan the complement of the collection set.