8204094: assert(worker_i < _length) failed: Worker 15 is greater than max: 11 at ReferenceProcessorPhaseTimes
Reviewed-by: kbarrett, tschatzl
--- a/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -5142,7 +5142,7 @@
rp->setup_policy(false);
verify_work_stacks_empty();
- ReferenceProcessorPhaseTimes pt(_gc_timer_cm, rp->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer_cm, rp->max_num_queues());
{
GCTraceTime(Debug, gc, phases) t("Reference Processing", _gc_timer_cm);
--- a/src/hotspot/share/gc/cms/parNewGeneration.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/cms/parNewGeneration.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -958,7 +958,7 @@
// Can the mt_degree be set later (at run_task() time would be best)?
rp->set_active_mt_degree(active_workers);
ReferenceProcessorStats stats;
- ReferenceProcessorPhaseTimes pt(_gc_timer, rp->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer, rp->max_num_queues());
if (rp->processing_is_mt()) {
ParNewRefProcTaskExecutor task_executor(*this, *_old_gen, thread_state_set);
stats = rp->process_discovered_references(&is_alive, &keep_alive,
--- a/src/hotspot/share/gc/g1/g1ConcurrentMark.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/g1/g1ConcurrentMark.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -1625,7 +1625,7 @@
// Reference lists are balanced (see balance_all_queues() and balance_queues()).
rp->set_active_mt_degree(active_workers);
- ReferenceProcessorPhaseTimes pt(_gc_timer_cm, rp->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer_cm, rp->max_num_queues());
// Process the weak references.
const ReferenceProcessorStats& stats =
--- a/src/hotspot/share/gc/g1/g1FullGCReferenceProcessorExecutor.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/g1/g1FullGCReferenceProcessorExecutor.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -78,7 +78,7 @@
G1FullGCMarker* marker = _collector->marker(0);
G1IsAliveClosure is_alive(_collector->mark_bitmap());
G1FullKeepAliveClosure keep_alive(marker);
- ReferenceProcessorPhaseTimes pt(timer, _reference_processor->num_queues());
+ ReferenceProcessorPhaseTimes pt(timer, _reference_processor->max_num_queues());
AbstractRefProcTaskExecutor* executor = _reference_processor->processing_is_mt() ? this : NULL;
// Process discovered references, use this executor if multi-threaded
--- a/src/hotspot/share/gc/parallel/psMarkSweep.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/parallel/psMarkSweep.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -536,7 +536,7 @@
GCTraceTime(Debug, gc, phases) t("Reference Processing", _gc_timer);
ref_processor()->setup_policy(clear_all_softrefs);
- ReferenceProcessorPhaseTimes pt(_gc_timer, ref_processor()->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer, ref_processor()->max_num_queues());
const ReferenceProcessorStats& stats =
ref_processor()->process_discovered_references(
is_alive_closure(), mark_and_push_closure(), follow_stack_closure(), NULL, &pt);
--- a/src/hotspot/share/gc/parallel/psParallelCompact.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/parallel/psParallelCompact.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -2111,7 +2111,7 @@
GCTraceTime(Debug, gc, phases) tm("Reference Processing", &_gc_timer);
ReferenceProcessorStats stats;
- ReferenceProcessorPhaseTimes pt(&_gc_timer, ref_processor()->num_queues());
+ ReferenceProcessorPhaseTimes pt(&_gc_timer, ref_processor()->max_num_queues());
if (ref_processor()->processing_is_mt()) {
RefProcTaskExecutor task_executor;
stats = ref_processor()->process_discovered_references(
--- a/src/hotspot/share/gc/parallel/psScavenge.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/parallel/psScavenge.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -399,7 +399,7 @@
PSKeepAliveClosure keep_alive(promotion_manager);
PSEvacuateFollowersClosure evac_followers(promotion_manager);
ReferenceProcessorStats stats;
- ReferenceProcessorPhaseTimes pt(&_gc_timer, reference_processor()->num_queues());
+ ReferenceProcessorPhaseTimes pt(&_gc_timer, reference_processor()->max_num_queues());
if (reference_processor()->processing_is_mt()) {
PSRefProcTaskExecutor task_executor;
stats = reference_processor()->process_discovered_references(
--- a/src/hotspot/share/gc/serial/defNewGeneration.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/serial/defNewGeneration.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -629,7 +629,7 @@
FastKeepAliveClosure keep_alive(this, &scan_weak_ref);
ReferenceProcessor* rp = ref_processor();
rp->setup_policy(clear_all_soft_refs);
- ReferenceProcessorPhaseTimes pt(_gc_timer, rp->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer, rp->max_num_queues());
const ReferenceProcessorStats& stats =
rp->process_discovered_references(&is_alive, &keep_alive, &evacuate_followers,
NULL, &pt);
--- a/src/hotspot/share/gc/serial/genMarkSweep.cpp Mon Jun 04 21:19:15 2018 -0700
+++ b/src/hotspot/share/gc/serial/genMarkSweep.cpp Mon Jun 04 21:20:16 2018 -0700
@@ -208,7 +208,7 @@
GCTraceTime(Debug, gc, phases) tm_m("Reference Processing", gc_timer());
ref_processor()->setup_policy(clear_all_softrefs);
- ReferenceProcessorPhaseTimes pt(_gc_timer, ref_processor()->num_queues());
+ ReferenceProcessorPhaseTimes pt(_gc_timer, ref_processor()->max_num_queues());
const ReferenceProcessorStats& stats =
ref_processor()->process_discovered_references(
&is_alive, &keep_alive, &follow_stack_closure, NULL, &pt);