# HG changeset patch # User zgu # Date 1558458412 14400 # Node ID a5f5e680ea320ebcf6fa08f60fb360611e44eb2a # Parent 1b28206dcbcbd536966f01bd6a2f2c54193f32b1 8224495: Shenandoah: Do not rescan code roots in final mark pause if it is not degenerated GC Reviewed-by: shade diff -r 1b28206dcbcb -r a5f5e680ea32 src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp --- a/src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp Tue May 21 18:22:54 2019 +0200 +++ b/src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp Tue May 21 13:06:52 2019 -0400 @@ -227,9 +227,12 @@ rp = NULL; } - // Degenerated cycle may bypass concurrent cycle, so code roots might not be scanned, - // let's check here. - _cm->concurrent_scan_code_roots(worker_id, rp); + if (heap->is_degenerated_gc_in_progress()) { + // Degenerated cycle may bypass concurrent cycle, so code roots might not be scanned, + // let's check here. + _cm->concurrent_scan_code_roots(worker_id, rp); + } + _cm->mark_loop(worker_id, _terminator, rp, false, // not cancellable _dedup_string);