RFR: 8271293: Monitor class should use ThreadBlockInVMPreprocess

Patricio Chilano Mateo pchilanomate at openjdk.java.net
Tue Aug 3 23:20:38 UTC 2021


Hi,

Please review the following small patch which changes the Monitor class to use the more appropriate ThreadBlockInVMPreprocess transition wrapper instead of ThreadBlockInVM. This allows to remove the embedded InFlightMutexRelease object from ThreadBlockInVM and to move it, along with the definition of the InFlightMutexRelease class, to mutex.cpp where they belong.

I also changed the default value of allow_suspend to false, even though more users set it to true, to make it consistent with the fact that ThreadBlockInVM doesn't process suspend requests. This avoids having to think twice when looking at a ThreadBlockInVM* object as to whether it processes suspend requests or not. Suspend requests are never processed unless explicitly allowed.

I also changed ThreadBlockInVM to be a typedef to avoid declaring a wrapper class of ThreadBlockInVMPreprocess. 

Testing in mach5 tiers 1-3.

Thanks,
Patricio

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

Commit messages:
 - v1

Changes: https://git.openjdk.java.net/jdk/pull/4978/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4978&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8271293
  Stats: 56 lines in 4 files changed: 15 ins; 23 del; 18 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4978.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4978/head:pull/4978

PR: https://git.openjdk.java.net/jdk/pull/4978


More information about the hotspot-runtime-dev mailing list