--- old/src/hotspot/share/runtime/objectMonitor.cpp 2018-09-17 23:30:05.411744463 -0700 +++ new/src/hotspot/share/runtime/objectMonitor.cpp 2018-09-17 23:30:05.155744472 -0700 @@ -108,7 +108,6 @@ static int Knob_Penalty = 200; // spin failure penalty static int Knob_Poverty = 1000; static int Knob_FixedSpin = 0; -static int Knob_OState = 3; // Spinner checks thread state of _owner static int Knob_UsePause = 1; static int Knob_ExitPolicy = 0; static int Knob_PreSpin = 10; // 20-100 likely better @@ -1831,7 +1830,7 @@ ctr = _SpinDuration; if (ctr <= 0) return 0; - if (Knob_OState && NotRunnable (Self, (Thread *) _owner)) { + if (NotRunnable(Self, (Thread *) _owner)) { return 0; } @@ -1923,7 +1922,7 @@ // The owner must be executing in order to drop the lock. // Spinning while the owner is OFFPROC is idiocy. // Consider: ctr -= RunnablePenalty ; - if (Knob_OState && NotRunnable (Self, ox)) { + if (NotRunnable(Self, ox)) { goto Abort; } if (_succ == NULL) {