hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp
changeset 3000 bbce6052b595
parent 2741 34e2a243d69a
child 3182 2ec0cb2496b8
equal deleted inserted replaced
2998:b501bd305780 3000:bbce6052b595
  1155     if (G1TraceMarkStackOverflow)
  1155     if (G1TraceMarkStackOverflow)
  1156       gclog_or_tty->print_cr("\nRemark led to restart for overflow.");
  1156       gclog_or_tty->print_cr("\nRemark led to restart for overflow.");
  1157   } else {
  1157   } else {
  1158     // We're done with marking.
  1158     // We're done with marking.
  1159     JavaThread::satb_mark_queue_set().set_active_all_threads(false);
  1159     JavaThread::satb_mark_queue_set().set_active_all_threads(false);
       
  1160 
       
  1161     if (VerifyDuringGC) {
       
  1162       g1h->prepare_for_verify();
       
  1163       g1h->verify(/* allow_dirty */      true,
       
  1164                   /* silent */           false,
       
  1165                   /* use_prev_marking */ false);
       
  1166     }
  1160   }
  1167   }
  1161 
  1168 
  1162 #if VERIFY_OBJS_PROCESSED
  1169 #if VERIFY_OBJS_PROCESSED
  1163   _scan_obj_cl.objs_processed = 0;
  1170   _scan_obj_cl.objs_processed = 0;
  1164   ThreadLocalObjQueue::objs_enqueued = 0;
  1171   ThreadLocalObjQueue::objs_enqueued = 0;
  1745 
  1752 
  1746   // We need to make this be a "collection" so any collection pause that
  1753   // We need to make this be a "collection" so any collection pause that
  1747   // races with it goes around and waits for completeCleanup to finish.
  1754   // races with it goes around and waits for completeCleanup to finish.
  1748   g1h->increment_total_collections();
  1755   g1h->increment_total_collections();
  1749 
  1756 
  1750 #ifndef PRODUCT
       
  1751   if (VerifyDuringGC) {
  1757   if (VerifyDuringGC) {
  1752     G1CollectedHeap::heap()->prepare_for_verify();
  1758     g1h->prepare_for_verify();
  1753     G1CollectedHeap::heap()->verify(true,false);
  1759     g1h->verify(/* allow_dirty */      true,
  1754   }
  1760                 /* silent */           false,
  1755 #endif
  1761                 /* use_prev_marking */ true);
       
  1762   }
  1756 }
  1763 }
  1757 
  1764 
  1758 void ConcurrentMark::completeCleanup() {
  1765 void ConcurrentMark::completeCleanup() {
  1759   // A full collection intervened.
  1766   // A full collection intervened.
  1760   if (has_aborted()) return;
  1767   if (has_aborted()) return;