< prev index next >
src/hotspot/share/compiler/compileBroker.cpp
Print this page
@@ -1499,12 +1499,13 @@
task->lock()->wait(!Mutex::_no_safepoint_check_flag, JVMCI_COMPILATION_PROGRESS_WAIT_TIMESLICE)) {
CompilerThread* jvmci_compiler_thread = task->jvmci_compiler_thread();
bool progress;
if (jvmci_compiler_thread != NULL) {
- // If the JVMCI compiler thread is not blocked, we deem it to be making progress.
- progress = jvmci_compiler_thread->thread_state() != _thread_blocked;
+ // If the JVMCI compiler thread is not blocked or suspended, we deem it to be making progress.
+ progress = jvmci_compiler_thread->thread_state() != _thread_blocked &&
+ !jvmci_compiler_thread->is_external_suspend();
} else {
// Still waiting on JVMCI compiler queue. This thread may be holding a lock
// that all JVMCI compiler threads are blocked on. We use the counter for
// successful JVMCI compilations to determine whether JVMCI compilation
// is still making progress through the JVMCI compiler queue.
< prev index next >