diff -r a4075664328d -r 322d55d167be hotspot/src/share/vm/runtime/vm_operations.cpp --- a/hotspot/src/share/vm/runtime/vm_operations.cpp Mon Dec 08 00:15:55 2014 -0800 +++ b/hotspot/src/share/vm/runtime/vm_operations.cpp Thu Dec 11 21:34:43 2014 -0500 @@ -391,7 +391,8 @@ assert(SafepointSynchronize::is_at_safepoint(), "must be at safepoint already"); Thread * thr_cur = ThreadLocalStorage::get_thread_slow(); - Monitor timer(Mutex::leaf, "VM_Exit timer", true); + Monitor timer(Mutex::leaf, "VM_Exit timer", true, + Monitor::_safepoint_check_never); // Compiler threads need longer wait because they can access VM data directly // while in native. If they are active and some structures being used are