On Wed, 6 Oct 2021 23:27:17 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:
> Also fixes: 8273956: Add checking for rank values > > This change does 3 things. I could separate them but this has all been > tested together and most of the change is mechanical. The first is a simple > rename of nonleaf => safepoint. The second change is to add the enum class > Rank which only allows subtraction from a base rank, and some additional type > checking so that rank arithmetic doesn't overlap with a different rank. Ie > if you say nosafepoint-n, that doesn't overlap with oopstorage. The third > change is to remove the _safepoint_check_always/never flag. That is now > intrinsic in the ranking, as all nosafepoint ranks are lower than all > safepoint ranks. > > Future changes could add rank names in the middle of nosafepoint and > safepoint, like handshake. As of now, the rank subtractions are not > unmanageable. There are actually not many nested Mutex. > > This is the last of the planned subtasks for Mutex ranking cleanup. If you > have other ideas or suggestions, please let me know. > > Tested with tier1-8 at one point in time and just retested with tier1-6. Hi Coleen, Overall this looks good! But shouldn't the test: test/hotspot/gtest/runtime/test_safepoint_locks.cpp be replaced by one that checks we lock with/without a safepoint check for a safepoint/nonsafepoint lock respectively? (Or does that test already exist elsewhere?). Also should there not be a gtest to verify your Rank overlap checking? Thanks, David ------------- PR: https://git.openjdk.java.net/jdk/pull/5845