--- old/src/hotspot/share/runtime/objectMonitor.cpp 2018-09-17 23:28:59.147746771 -0700 +++ new/src/hotspot/share/runtime/objectMonitor.cpp 2018-09-17 23:28:58.887746780 -0700 @@ -103,7 +103,6 @@ int ObjectMonitor::Knob_SpinLimit = 5000; // derived by an external tool - -static int Knob_CASPenalty = -1; // Penalty for failed CAS static int Knob_OXPenalty = -1; // Penalty for observed _owner change static int Knob_SpinSetSucc = 1; // spinners set the _succ field static int Knob_SpinEarly = 1; @@ -1865,7 +1864,6 @@ // CONSIDER: use Prefetch::write() to avoid RTS->RTO upgrades // when preparing to LD...CAS _owner, etc and the CAS is likely // to succeed. - int caspty = Knob_CASPenalty; int oxpty = Knob_OXPenalty; int sss = Knob_SpinSetSucc; if (sss && _succ == NULL) _succ = Self; @@ -1933,15 +1931,12 @@ } // The CAS failed ... we can take any of the following actions: - // * penalize: ctr -= Knob_CASPenalty + // * penalize: ctr -= CASPenalty // * exit spin with prejudice -- goto Abort; // * exit spin without prejudice. // * Since CAS is high-latency, retry again immediately. prv = ox; - if (caspty == -2) break; - if (caspty == -1) goto Abort; - ctr -= caspty; - continue; + goto Abort; } // Did lock ownership change hands ?