src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp
changeset 55152 6c205bbdafd2
parent 55121 f19a728d576d
child 55230 9775d05d69c8
equal deleted inserted replaced
55151:9691a169f1dd 55152:6c205bbdafd2
  1602     ShenandoahGCPhase phase(ShenandoahPhaseTimings::full_gc_resize_tlabs);
  1602     ShenandoahGCPhase phase(ShenandoahPhaseTimings::full_gc_resize_tlabs);
  1603     resize_all_tlabs();
  1603     resize_all_tlabs();
  1604   }
  1604   }
  1605 
  1605 
  1606   metrics.snap_after();
  1606   metrics.snap_after();
  1607   metrics.print();
  1607 
  1608 
  1608   if (metrics.is_good_progress()) {
  1609   if (metrics.is_good_progress("Full GC")) {
       
  1610     _progress_last_gc.set();
  1609     _progress_last_gc.set();
  1611   } else {
  1610   } else {
  1612     // Nothing to do. Tell the allocation path that we have failed to make
  1611     // Nothing to do. Tell the allocation path that we have failed to make
  1613     // progress, and it can finally fail.
  1612     // progress, and it can finally fail.
  1614     _progress_last_gc.unset();
  1613     _progress_last_gc.unset();
  1737   if (VerifyAfterGC) {
  1736   if (VerifyAfterGC) {
  1738     Universe::verify();
  1737     Universe::verify();
  1739   }
  1738   }
  1740 
  1739 
  1741   metrics.snap_after();
  1740   metrics.snap_after();
  1742   metrics.print();
       
  1743 
  1741 
  1744   // Check for futility and fail. There is no reason to do several back-to-back Degenerated cycles,
  1742   // Check for futility and fail. There is no reason to do several back-to-back Degenerated cycles,
  1745   // because that probably means the heap is overloaded and/or fragmented.
  1743   // because that probably means the heap is overloaded and/or fragmented.
  1746   if (!metrics.is_good_progress("Degenerated GC")) {
  1744   if (!metrics.is_good_progress()) {
  1747     _progress_last_gc.unset();
  1745     _progress_last_gc.unset();
  1748     cancel_gc(GCCause::_shenandoah_upgrade_to_full_gc);
  1746     cancel_gc(GCCause::_shenandoah_upgrade_to_full_gc);
  1749     op_degenerated_futile();
  1747     op_degenerated_futile();
  1750   } else {
  1748   } else {
  1751     _progress_last_gc.set();
  1749     _progress_last_gc.set();