--- old/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp 2020-06-01 12:25:21.725030095 +0200 +++ new/src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp 2020-06-01 12:25:21.409030507 +0200 @@ -1660,7 +1660,7 @@ ShenandoahConcurrentRootsEvacUpdateTask(ShenandoahPhaseTimings::Phase phase) : AbstractGangTask("Shenandoah Evacuate/Update Concurrent Strong Roots Task"), _vm_roots(phase), - _cld_roots(phase) {} + _cld_roots(phase, ShenandoahHeap::heap()->workers()->active_workers()) {} void work(uint worker_id) { ShenandoahConcurrentWorkerSession worker_session(worker_id); @@ -1781,7 +1781,7 @@ _string_table_roots(OopStorageSet::string_table_weak(), phase, ShenandoahPhaseTimings::StringTableRoots), _resolved_method_table_roots(OopStorageSet::resolved_method_table_weak(), phase, ShenandoahPhaseTimings::ResolvedMethodTableRoots), _vm_roots(OopStorageSet::vm_weak(), phase, ShenandoahPhaseTimings::VMWeakRoots), - _cld_roots(phase), + _cld_roots(phase, ShenandoahHeap::heap()->workers()->active_workers()), _nmethod_itr(ShenandoahCodeRoots::table()), _concurrent_class_unloading(ShenandoahConcurrentRoots::should_do_concurrent_class_unloading()) { StringTable::reset_dead_counter();