RFR: 8254029: ObjectMonitor cleanup/minor bug-fix changes extracted from JDK-8253064
Daniel D.Daugherty
dcubed at openjdk.java.net
Wed Oct 14 22:04:20 UTC 2020
On Tue, 13 Oct 2020 21:25:34 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:
>> 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.
>>
>> My personal fork includes the commit for:
>> JDK-8254335: logging/logStream.hpp includes memory/resourceArea.hpp but d…
>> because the project is currently based on jdk-16+19 and I pushed that commit for jdk-16+20.
>> Please ignore that commit when reviewing this fix.
>
> 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().
Mach5 Tier[1-3],4,5,6,7 testing looks good; there are four test
failures associated with unrelated, known bugs; there are four
other test failures on a machine with bad hardware so those are
invalid.
Update: Tier8 testing is still in process, but so far the results
look good.
-------------
PR: https://git.openjdk.java.net/jdk/pull/641
More information about the hotspot-runtime-dev
mailing list