< prev index next >

src/share/vm/runtime/arguments.cpp

Print this page

        

@@ -1804,15 +1804,10 @@
   // modification.
   if (!FLAG_IS_DEFAULT(OldPLABSize) || !FLAG_IS_DEFAULT(OldPLABWeight)) {
     CompactibleFreeListSpaceLAB::modify_initialization(OldPLABSize, OldPLABWeight);
   }
 
-  if (!ClassUnloading) {
-    FLAG_SET_CMDLINE(bool, CMSClassUnloadingEnabled, false);
-    FLAG_SET_CMDLINE(bool, ExplicitGCInvokesConcurrentAndUnloadsClasses, false);
-  }
-
   log_trace(gc)("MarkStackSize: %uk  MarkStackSizeMax: %uk", (unsigned int) (MarkStackSize / K), (uint) (MarkStackSizeMax / K));
   log_trace(gc)("ConcGCThreads: %u", ConcGCThreads);
 }
 #endif // INCLUDE_ALL_GCS
 

@@ -2120,10 +2115,22 @@
   }
   if (MinHeapFreeRatio == 100) {
     // Keeping the heap 100% free is hard ;-) so limit it to 99%.
     FLAG_SET_ERGO(uintx, MinHeapFreeRatio, 99);
   }
+
+  if (!ClassUnloading) {
+    FLAG_SET_CMDLINE(bool, ClassUnloadingWithConcurrentMark, false);
+    FLAG_SET_CMDLINE(bool, ExplicitGCInvokesConcurrentAndUnloadsClasses, false);
+  }
+
+  if (!FLAG_IS_DEFAULT(CMSClassUnloadingEnabled)) {
+    // This is CMS specific but I wanted to keep it close to the
+    // if (!ClassUnloading) above. Once CMSClassUnloadingEnabled is
+    // deprecated, this is the code to remove.
+    FLAG_SET_CMDLINE(bool, ClassUnloadingWithConcurrentMark, CMSClassUnloadingEnabled);
+  }
 #endif // INCLUDE_ALL_GCS
 }
 
 julong Arguments::limit_by_allocatable_memory(julong limit) {
   julong max_allocatable;
< prev index next >