8184732: Deadlock detection improvements for 'special' locks

Assert that special ranked locks cannot safepoint and allow_vm_block and remove locks from the exceptional lock list in no_safepoint_verifier.

Reviewed-by: dholmes, eosterlund
This commit is contained in:
Coleen Phillimore 2019-09-30 13:10:11 -04:00
parent 8a50aa7d21
commit 98f454c9ca
7 changed files with 116 additions and 22 deletions

View file

@ -288,7 +288,7 @@ void mutex_init() {
def(JvmtiThreadState_lock , PaddedMutex , nonleaf+2, false, _safepoint_check_always); // Used by JvmtiThreadState/JvmtiEventController
def(Management_lock , PaddedMutex , nonleaf+2, false, _safepoint_check_always); // used for JVM management
def(Compile_lock , PaddedMutex , nonleaf+3, true, _safepoint_check_always);
def(Compile_lock , PaddedMutex , nonleaf+3, false, _safepoint_check_always);
def(MethodData_lock , PaddedMutex , nonleaf+3, false, _safepoint_check_always);
def(TouchedMethodLog_lock , PaddedMutex , nonleaf+3, false, _safepoint_check_always);