< prev index next >

src/share/vm/gc/g1/g1CollectedHeap.cpp

Print this page
rev 9404 : 8143251: HeapRetentionTest.java Test is failing on jdk9/dev
Reviewed-by:

@@ -2257,19 +2257,25 @@
 
   g1_policy()->phase_times()->record_evac_fail_recalc_used_time((os::elapsedTime() - recalculate_used_start) * 1000.0);
   return blk.result();
 }
 
-bool G1CollectedHeap::should_do_concurrent_full_gc(GCCause::Cause cause) {
+bool  G1CollectedHeap::user_requested_concurrent_full_gc(GCCause::Cause cause) {
   switch (cause) {
-    case GCCause::_gc_locker:               return GCLockerInvokesConcurrent;
     case GCCause::_java_lang_system_gc:     return ExplicitGCInvokesConcurrent;
     case GCCause::_dcmd_gc_run:             return ExplicitGCInvokesConcurrent;
-    case GCCause::_g1_humongous_allocation: return true;
     case GCCause::_update_allocation_context_stats_inc: return true;
     case GCCause::_wb_conc_mark:            return true;
-    default:                                return false;
+    default :                                           return false;
+  }
+}
+
+bool G1CollectedHeap::should_do_concurrent_full_gc(GCCause::Cause cause) {
+  switch (cause) {
+    case GCCause::_gc_locker:               return GCLockerInvokesConcurrent;
+    case GCCause::_g1_humongous_allocation: return true;
+    default:                                return user_requested_concurrent_full_gc(cause);
   }
 }
 
 #ifndef PRODUCT
 void G1CollectedHeap::allocate_dummy_regions() {
< prev index next >