JDK-8225453 : is_busy diagnostics and other baseline cleanups from Async Monitor Deflation project
  • Type: Sub-task
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 13
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2019-06-06
  • Updated: 2020-03-30
  • Resolved: 2019-06-12
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 13 JDK 14
13 b25Fixed 14Fixed
Related Reports
Relates :  
Description
This sub-task captures updates to the baseline code that came up
during the Async Monitor Deflation project. 

The changes include:

- set_owner() does not need to set _recursions and remove
  the verbose commentary since it is now a simple setter
- remove unnecessary set_owner(NULL) calls:
  - in ObjectSynchronizer::omFlush()
  - in ObjectSynchronizer::inflate(for CASE: neutral)
- remove unnecessary '_recursions = 0' settings that are
  handled by an earlier Recycle() call
- is_busy() diagnostic mesg support:
  - add ObjectMonitor::is_busy_to_string() and use it
    in assert() and guarantee() calls
- remove assert()'s that check core results like Atomic::cmpxchg()
  (Thanks Robbin!)
- remove some stale comments
- fix some bad comments in ObjectSynchronizer::omFlush() that
  came from an old fix that I pushed in 2015 (JDK-8073165).
- update 'monitorinflation' logging to include new is_busy_to_string() output