--- old/src/hotspot/share/runtime/thread.hpp 2019-10-17 17:29:21.000000000 -0400 +++ new/src/hotspot/share/runtime/thread.hpp 2019-10-17 17:29:20.000000000 -0400 @@ -414,11 +414,11 @@ // Per-thread ObjectMonitor lists: public: - ObjectMonitor* om_free_list; // SLL of free ObjectMonitors - int om_free_count; // # on om_free_list + ObjectMonitor* volatile om_free_list; // SLL of free ObjectMonitors + volatile int om_free_count; // # on om_free_list int om_free_provision; // # to try to allocate next - ObjectMonitor* om_in_use_list; // SLL of in-use ObjectMonitors - int om_in_use_count; // # on om_in_use_list + ObjectMonitor* volatile om_in_use_list; // SLL of in-use ObjectMonitors + volatile int om_in_use_count; // # on om_in_use_list #ifdef ASSERT private: @@ -524,7 +524,6 @@ os::set_native_thread_name(name); } - ObjectMonitor** om_in_use_list_addr() { return (ObjectMonitor **)&om_in_use_list; } Monitor* SR_lock() const { return _SR_lock; } bool has_async_exception() const { return (_suspend_flags & _has_async_exception) != 0; }