RFR: 8306825: Monitor deflation might be accidentally disabled by zero intervals [v3]
    Aleksey Shipilev 
    shade at openjdk.org
       
    Fri Apr 28 16:01:53 UTC 2023
    
    
  
> 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.
Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
  Grammar updates
-------------
Changes:
  - all: https://git.openjdk.org/jdk/pull/13635/files
  - new: https://git.openjdk.org/jdk/pull/13635/files/4a60694f..a5c3aa53
Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=13635&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=13635&range=01-02
  Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/13635.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13635/head:pull/13635
PR: https://git.openjdk.org/jdk/pull/13635
    
    
More information about the hotspot-runtime-dev
mailing list