src/hotspot/share/gc/g1/g1EvacFailure.cpp
changeset 57785 8d9362f3b8aa
parent 55752 8ae33203d600
child 58679 9c3209ff7550
--- a/src/hotspot/share/gc/g1/g1EvacFailure.cpp	Fri Aug 16 11:35:17 2019 -0700
+++ b/src/hotspot/share/gc/g1/g1EvacFailure.cpp	Fri Aug 16 14:46:52 2019 -0400
@@ -203,10 +203,10 @@
   UpdateLogBuffersDeferred _log_buffer_cl;
 
 public:
-  RemoveSelfForwardPtrHRClosure(uint worker_id) :
+  RemoveSelfForwardPtrHRClosure(G1RedirtyCardsQueueSet* rdcqs, uint worker_id) :
     _g1h(G1CollectedHeap::heap()),
     _worker_id(worker_id),
-    _rdcq(&_g1h->redirty_cards_queue_set()),
+    _rdcq(rdcqs),
     _log_buffer_cl(&_rdcq) {
   }
 
@@ -250,13 +250,14 @@
   }
 };
 
-G1ParRemoveSelfForwardPtrsTask::G1ParRemoveSelfForwardPtrsTask() :
+G1ParRemoveSelfForwardPtrsTask::G1ParRemoveSelfForwardPtrsTask(G1RedirtyCardsQueueSet* rdcqs) :
   AbstractGangTask("G1 Remove Self-forwarding Pointers"),
   _g1h(G1CollectedHeap::heap()),
+  _rdcqs(rdcqs),
   _hrclaimer(_g1h->workers()->active_workers()) { }
 
 void G1ParRemoveSelfForwardPtrsTask::work(uint worker_id) {
-  RemoveSelfForwardPtrHRClosure rsfp_cl(worker_id);
+  RemoveSelfForwardPtrHRClosure rsfp_cl(_rdcqs, worker_id);
 
   _g1h->collection_set_iterate_increment_from(&rsfp_cl, &_hrclaimer, worker_id);
 }