The vmTestbase/vm/gc/containers/Combination02 test sometimes crashes when processing the optional remembered set with (most of the time) the following stack trace:
V [libjvm.so+0x764db8] G1ParCopyClosure<(G1Barrier)0, (G1Mark)0>::do_oop(oopDesc**)+0x38
V [libjvm.so+0x74c250] G1OopStarChunkedList::oops_do(OopClosure*, OopClosure*)+0x60
V [libjvm.so+0x75a2c4] G1ScanRSForRegionClosure::scan_opt_rem_set_roots(HeapRegion*)+0xc4
V [libjvm.so+0x75a3b7] G1ScanRSForRegionClosure::do_heap_region(HeapRegion*)+0x47
V [libjvm.so+0x7117e4] G1CollectionSet::iterate_incremental_part_from(HeapRegionClosure*, unsigned int, unsigned int) const+0x84
V [libjvm.so+0x758ec8] G1RemSet::scan_rem_set(G1ParScanThreadState*, unsigned int, G1GCPhaseTimes::GCParPhases, G1GCPhaseTimes::GCParPhases, G1GCPhaseTimes::GCParPhases)+0xf8
V [libjvm.so+0x70b978] G1EvacuateRegionsBaseTask::work(unsigned int)+0x98
siginfo: si_signo: 11 (SIGSEGV), si_code: 128 (SI_KERNEL), si_addr: 0x0000000000000000
Reproduction 1 in 1000 runs of that stress test in the CI environment.
Sometimes the stack trace does not contain the topmost stack frame, indicating the crash in G1OopStarChunkedList::oops_do(), but otherwise looking exactly the same.
V [libjvm.so+0x764db8] G1ParCopyClosure<(G1Barrier)0, (G1Mark)0>::do_oop(oopDesc**)+0x38
V [libjvm.so+0x74c250] G1OopStarChunkedList::oops_do(OopClosure*, OopClosure*)+0x60
V [libjvm.so+0x75a2c4] G1ScanRSForRegionClosure::scan_opt_rem_set_roots(HeapRegion*)+0xc4
V [libjvm.so+0x75a3b7] G1ScanRSForRegionClosure::do_heap_region(HeapRegion*)+0x47
V [libjvm.so+0x7117e4] G1CollectionSet::iterate_incremental_part_from(HeapRegionClosure*, unsigned int, unsigned int) const+0x84
V [libjvm.so+0x758ec8] G1RemSet::scan_rem_set(G1ParScanThreadState*, unsigned int, G1GCPhaseTimes::GCParPhases, G1GCPhaseTimes::GCParPhases, G1GCPhaseTimes::GCParPhases)+0xf8
V [libjvm.so+0x70b978] G1EvacuateRegionsBaseTask::work(unsigned int)+0x98
siginfo: si_signo: 11 (SIGSEGV), si_code: 128 (SI_KERNEL), si_addr: 0x0000000000000000
Reproduction 1 in 1000 runs of that stress test in the CI environment.
Sometimes the stack trace does not contain the topmost stack frame, indicating the crash in G1OopStarChunkedList::oops_do(), but otherwise looking exactly the same.
- duplicates
-
JDK-8223362 Crash in G1OopStarChunkedList::chunks_do during evacuation
- Closed
-
JDK-8222492 G1 unnecessarily scans remembered set cards for regions that already have been evacuated
- Closed
- relates to
-
JDK-8218668 Clean up evacuation of optional collection set
- Resolved