--- old/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp 2014-07-10 11:02:38.213357785 +0200 +++ new/src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp 2014-07-10 11:02:38.130355383 +0200 @@ -1045,13 +1045,6 @@ } } - bool new_in_marking_window = _in_marking_window; - bool new_in_marking_window_im = false; - if (during_initial_mark_pause()) { - new_in_marking_window = true; - new_in_marking_window_im = true; - } - if (_last_young_gc) { // This is supposed to to be the "last young GC" before we start // doing mixed GCs. Here we decide whether to start mixed GCs or not. @@ -1178,9 +1171,13 @@ _pending_cards_seq->add((double) _pending_cards); _rs_lengths_seq->add((double) _max_rs_lengths); } + + _in_marking_window_im = false; + if (last_pause_included_initial_mark) { + _in_marking_window = true; + _in_marking_window_im = true; + } - _in_marking_window = new_in_marking_window; - _in_marking_window_im = new_in_marking_window_im; _free_regions_at_end_of_collection = _g1->free_regions(); update_young_list_target_length();