8204094: assert(worker_i < _length) failed: Worker 15 is greater than max: 11 at ReferenceProcessorPhaseTimes
Reviewed-by: kbarrett, tschatzl
This commit is contained in:
parent
4a7d797fda
commit
4fb9d6717d
@ -5142,7 +5142,7 @@ void CMSCollector::refProcessingWork() {
|
||||
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);
|
||||
|
||||
|
@ -958,7 +958,7 @@ void ParNewGeneration::collect(bool full,
|
||||
// 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,
|
||||
|
@ -1625,7 +1625,7 @@ void G1ConcurrentMark::weak_refs_work(bool clear_all_soft_refs) {
|
||||
// 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 =
|
||||
|
@ -78,7 +78,7 @@ void G1FullGCReferenceProcessingExecutor::execute(STWGCTimer* timer, G1FullGCTra
|
||||
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
|
||||
|
@ -536,7 +536,7 @@ void PSMarkSweep::mark_sweep_phase1(bool clear_all_softrefs) {
|
||||
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);
|
||||
|
@ -2111,7 +2111,7 @@ void PSParallelCompact::marking_phase(ParCompactionManager* cm,
|
||||
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(
|
||||
|
@ -399,7 +399,7 @@ bool PSScavenge::invoke_no_policy() {
|
||||
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(
|
||||
|
@ -629,7 +629,7 @@ void DefNewGeneration::collect(bool full,
|
||||
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);
|
||||
|
@ -208,7 +208,7 @@ void GenMarkSweep::mark_sweep_phase1(bool clear_all_softrefs) {
|
||||
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);
|
||||
|
Loading…
x
Reference in New Issue
Block a user