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.

test/hotspot/gtest/runtime/test_mutex.cpp line 327:

> 325:   // If the lock above succeeds, try to safepoint to test the NSV 
> implied with this nosafepoint lock.
> 326:   ThreadBlockInVM tbivm(thread);
> 327:   thread->print_thread_state_on(tty);

I moved the three tests from test_safepoint.cpp here.  The third test in that 
file was checking the specification of _safepoint_check_always/never matched 
the rank, which is now obsolete.

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

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

Reply via email to