Found this mistake while backporting JDK-8305994: if we put GADI=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, 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.
Draft: https://github.com/openjdk/jdk/pull/13635