In the change for JDK-8152312 I always launch the WorkGang workers, even when ParallelGCThreads == 1:
void PreservedMarksSet::restore_internal(WorkGang* workers,
volatile size_t* total_size_addr) {
assert(workers != NULL, "pre-condition");
ParRestoreTask task(workers->active_workers(), this, total_size_addr);
workers->run_task(&task);
}
HotSpot convention is to call task.work(0) directly when ParallelGCThreads == 1.
void PreservedMarksSet::restore_internal(WorkGang* workers,
volatile size_t* total_size_addr) {
assert(workers != NULL, "pre-condition");
ParRestoreTask task(workers->active_workers(), this, total_size_addr);
workers->run_task(&task);
}
HotSpot convention is to call task.work(0) directly when ParallelGCThreads == 1.
- relates to
- 
                    JDK-8152312 ParNew: Restore preserved marks in parallel -           
- Resolved
 
-         
- 
                    JDK-8265450 Merge PreservedMarksSet::restore code paths -           
- Resolved
 
-         
 P5
  P5