7112034: Parallel CMS fails to properly mark reference objects
Summary: Enabled reference processing when work stealing during concurrent marking
Reviewed-by: jmasa, brutisso
--- a/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon Dec 05 12:26:40 2011 -0500
+++ b/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Mon Nov 28 10:19:26 2011 +0100
@@ -4052,7 +4052,7 @@
Par_ConcMarkingClosure(CMSCollector* collector, CMSConcMarkingTask* task, OopTaskQueue* work_queue,
CMSBitMap* bit_map, CMSMarkStack* overflow_stack,
CMSMarkStack* revisit_stack):
- Par_KlassRememberingOopClosure(collector, NULL, revisit_stack),
+ Par_KlassRememberingOopClosure(collector, collector->ref_processor(), revisit_stack),
_task(task),
_span(collector->_span),
_work_queue(work_queue),