RFR: 8318757: VM_ThreadDump asserts in interleaved ObjectMonitor::deflate_monitor calls [v6]

David Holmes dholmes at openjdk.org
Fri Nov 10 07:51:05 UTC 2023


On Thu, 9 Nov 2023 07:29:15 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:

>> A safepointed monitor deflation pass can run interleaved with a paused async monitor deflation pass. The code is not written to handle that situation and asserts when it finds a DEFLATER_MARKER in the owner field. @pchilano also found other issues with having to monitor deflation passes interleaved. More info below ...
>
> Stefan Karlsson has updated the pull request incrementally with five additional commits since the last revision:
> 
>  - Tweak the flag comment a bit
>  - Add AsyncMonitorDeflationForThreadDumpLimit flag
>  - Typos
>  - Remove comment in do_monitors
>  - Make monitors array public static

test/hotspot/jtreg/runtime/Monitor/ConcurrentDeflation.java line 70:

> 68: 
> 69:     static private void createMonitors() {
> 70:         monitors = new Object[1000];

`monitors` is already initialized.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/16519#discussion_r1388806485


More information about the hotspot-dev mailing list