MonitoringSupport_lock is initialized only when UseG1GC is true, but 
[JDK-8304074](https://bugs.openjdk.org/browse/JDK-8304074) uses it to implement 
getTotalThreadAllocatedBytes, which is available for all garbage collectors. 
While the current code sets UseG1GC regardless of which collector is specified, 
see FLAG_SET_ERGO_IF_DEFAULT(UseG1GC, true) in gcConfig.cpp, if G1 isn't 
included in the Hotspot build or Hotspot is not running on a server class 
machine (unlikely these days), the lock will not be initialized. The lock's 
initialization should be unconditional.

I updated ThreadAllocatedMemory.java to run the test using both G1 and Serial 
collectors.

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

Commit messages:
 - 8313081: MonitoringSupport_lock should be unconditionally initialized after 
8304074

Changes: https://git.openjdk.org/jdk/pull/15028/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15028&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8313081
  Stats: 16 lines in 2 files changed: 11 ins; 2 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/15028.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/15028/head:pull/15028

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

Reply via email to