JDK-8254029 : ObjectMonitor cleanup/minor bug-fix changes extracted from JDK-8253064
  • Type: Sub-task
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 16
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2020-10-05
  • Updated: 2020-10-28
  • Resolved: 2020-10-20
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 16
16 b21Fixed
Related Reports
Relates :  
Description
This sub-task is tracking ObjectMonitor cleanup/minor bug-fix changes
extracted from Erik's and Dan's work on JDK-8253064. This extraction
is done to ease the code review for the JDK-8253064 changes.

The changes covered by this bug are:

- Redo the "final" ObjectMonitor audit and print stats so that we no longer
  race between the ServiceThread and a thread generating ObjectMonitors
  until the end of time. The final audit is now done by the VMThread in the
  very late stages of VM exit (after other threads have blocked). Because
  we have two distinict VM exit code paths, we call the final audit hook
  from both paths.

  The race was introduced by the following:

      JDK-8246476 remove AsyncDeflateIdleMonitors option and the safepoint based deflation mechanism

- Do some renaming that should have been done by JDK-8246476.

- Delete the SharedGlobals::stw_cycle that should have been deleted
  by JDK-8246476.

- Do more "self" cleanup and use of as_Java_thread().
Comments
Changeset: c87cdf70 Author: Daniel D. Daugherty <dcubed@openjdk.org> Date: 2020-10-20 01:08:19 +0000 URL: https://git.openjdk.java.net/jdk/commit/c87cdf70
20-10-2020