< prev index next >

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

Print this page
rev 13238 : [mq]: 8183226-eridk-sjohanss-review

@@ -1658,10 +1658,18 @@
                                           rs.size());
 
   return result;
 }
 
+jint G1CollectedHeap::initialize_concurrent_refinement() {
+  _refine_cte_cl = new RefineCardTableEntryClosure();
+
+  jint ecode = JNI_OK;
+  _cg1r = ConcurrentG1Refine::create(_refine_cte_cl, &ecode);
+  return ecode;
+}
+
 jint G1CollectedHeap::initialize() {
   CollectedHeap::pre_initialize();
   os::enable_vtime();
 
   // Necessary to satisfy locking discipline assertions.

@@ -1806,15 +1814,12 @@
   JavaThread::satb_mark_queue_set().initialize(SATB_Q_CBL_mon,
                                                SATB_Q_FL_lock,
                                                G1SATBProcessCompletedThreshold,
                                                Shared_SATB_Q_lock);
 
-  _refine_cte_cl = new RefineCardTableEntryClosure();
-
-  jint ecode = JNI_OK;
-  _cg1r = ConcurrentG1Refine::create(_refine_cte_cl, &ecode);
-  if (_cg1r == NULL) {
+  jint ecode = initialize_concurrent_refinement();
+  if (ecode != JNI_OK) {
     return ecode;
   }
   
   JavaThread::dirty_card_queue_set().initialize(_refine_cte_cl,
                                                 DirtyCardQ_CBL_mon,

@@ -1856,12 +1861,10 @@
 
   _preserved_marks_set.init(ParallelGCThreads);
 
   _collection_set.initialize(max_regions());
 
-  _g1_rem_set->initialize_periodic_summary_info();
-
   return JNI_OK;
 }
 
 void G1CollectedHeap::stop() {
   // Stop all concurrent threads. We do this to make sure these threads
< prev index next >