Skip to content

Commit 52c6ce6

Browse files
author
William Kemper
committed
8352091: GenShen: assert(!(request.generation->is_old() && _heap->old_generation()->is_doing_mixed_evacuations())) failed: Old heuristic should not request cycles while it waits for mixed evacuation
Reviewed-by: rkennke
1 parent b8f3856 commit 52c6ce6

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/hotspot/share/gc/shenandoah/shenandoahGenerationalControlThread.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -689,7 +689,8 @@ bool ShenandoahGenerationalControlThread::request_concurrent_gc(ShenandoahGenera
689689
}
690690

691691
if (gc_mode() == none) {
692-
while (gc_mode() == none) {
692+
const size_t current_gc_id = get_gc_id();
693+
while (gc_mode() == none && current_gc_id == get_gc_id()) {
693694
if (_requested_gc_cause != GCCause::_no_gc) {
694695
log_debug(gc, thread)("Reject request for concurrent gc because another gc is pending: %s", GCCause::to_string(_requested_gc_cause));
695696
return false;

0 commit comments

Comments
 (0)