RFR: 8318757: 8318757 VM_ThreadDump asserts in interleaved ObjectMonitor::deflate_monitor [v2]

Stefan Karlsson stefank at openjdk.org
Mon Nov 6 20:09:35 UTC 2023


On Mon, 6 Nov 2023 19:47:58 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Stefan Karlsson has updated the pull request incrementally with three additional commits since the last revision:
>> 
>>  - Move ConcurrentDeflation.java out of tier1
>>  - Update comments
>>  - Use a named constant
>
> src/hotspot/share/runtime/vmOperations.cpp line 400:
> 
>> 398:     const int DeflateRequestLimit = 100000;
>> 399:     if (monitors_count > DeflateRequestLimit) {
>> 400:       ObjectSynchronizer::request_deflate_idle_monitors();
> 
> Not sure about this. Arguably, the async deflation policy should re-evaluate the conditions for deflation and then decide to act. Otherwise, this effectively backdoors the heuristics, and does so with the hardcoded threshold. On the other hand, the old code effectively did the same with threshold of `0`. 
> 
> So, I would rather keep old behavior and just request deflation without a threshold here.

Thanks for the feedback. It is unclear to me if the old behavior of deflating monitors for every single thread dump is beneficial or not, but I also wouldn't mind changing this to use your suggestion if others agree that it is the preferred way forward. I'm going to at least wait for @dcubed-ojdk to get some time to give his input on this.

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

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


More information about the hotspot-dev mailing list