Integrated: 8306825: Monitor deflation might be accidentally disabled by zero intervals

Aleksey Shipilev shade at openjdk.org
Mon May 1 08:15:59 UTC 2023


On Tue, 25 Apr 2023 09:55:10 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Found this mistake while backporting [JDK-8305994](https://bugs.openjdk.org/browse/JDK-8305994): if we put GuaranteedAsyncDeflationInterval=0 (defined as "disable guaranteed deflation"), then the MonitorDeflationThread would call `wait(0)`, that is, wait indefinitely for the notify. This breaks triggering the threshold heuristics!
> 
> But what is even more concerning, the same thing would happen even prior to [JDK-8305994](https://bugs.openjdk.org/browse/JDK-8305994), if we put GuaranteedSafepointInterval=0 too. Which means users who kept GSI=0 as the way to dodge excess safepoints, now effectively disable monitor deflation!
> 
> New test cases capture most of the interesting paths/combinations. Since I needed to add more test cases, I ended up refactoring the test for more clarity. The test is also renamed, because now it tests not only GADI, but other intervals too.

This pull request has now been integrated.

Changeset: a6b4f25b
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/a6b4f25bd50e6861281d162f143c5bc9c16bac51
Stats:     619 lines in 4 files changed: 383 ins; 231 del; 5 mod

8306825: Monitor deflation might be accidentally disabled by zero intervals

Reviewed-by: dcubed, eastigeevich, phh

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

PR: https://git.openjdk.org/jdk/pull/13635


More information about the hotspot-runtime-dev mailing list