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

David Holmes dholmes at openjdk.org
Mon Nov 13 00:42:02 UTC 2023


On Fri, 10 Nov 2023 13:29:18 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 one additional commit since the last revision:
> 
>   Do stuff in the synchronized block of the test

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

> 69: 
> 70:     static private void createMonitors() {
> 71:         int monitorCount = 0;

I think this needs to be static to prevent it being hoisted out of the sync block. I try not to assume how clever the JIT might be in this area.

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

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


More information about the hotspot-dev mailing list