--- old/src/hotspot/share/services/dtraceAttacher.cpp 2019-04-25 11:54:47.359924806 +0200 +++ new/src/hotspot/share/services/dtraceAttacher.cpp 2019-04-25 11:54:46.627900153 +0200 @@ -33,23 +33,6 @@ #ifdef SOLARIS -class VM_DeoptimizeTheWorld : public VM_Operation { - public: - VMOp_Type type() const { - return VMOp_DeoptimizeTheWorld; - } - void doit() { - CodeCache::mark_all_nmethods_for_deoptimization(); - ResourceMark rm; - DeoptimizationMarker dm; - // Deoptimize all activations depending on marked methods - Deoptimization::deoptimize_dependents(); - - // Mark the dependent methods non entrant - CodeCache::make_marked_nmethods_not_entrant(); - } -}; - static void set_bool_flag(const char* flag, bool value) { JVMFlag::boolAtPut((char*)flag, strlen(flag), &value, JVMFlag::ATTACH_ON_DEMAND); @@ -74,8 +57,8 @@ if (changed) { // one or more flags changed, need to deoptimize - VM_DeoptimizeTheWorld op; - VMThread::execute(&op); + CodeCache::mark_all_nmethods_for_deoptimization(); + Deoptimization::deoptimize_all_marked(); } } @@ -97,8 +80,8 @@ } if (changed) { // one or more flags changed, need to deoptimize - VM_DeoptimizeTheWorld op; - VMThread::execute(&op); + CodeCache::mark_all_nmethods_for_deoptimization(); + Deoptimization::deoptimize_all_marked(); } }