RFR: 8291714: Implement a Multi-Reader Single-Writer mutex for Hotspot

Kim Barrett kbarrett at openjdk.org
Tue Aug 16 19:53:12 UTC 2022


On Thu, 11 Aug 2022 15:18:10 GMT, Johan Sjölén <duke at openjdk.org> wrote:

> May I please have a review for this PR which implements a `MRWMutex` class for Hotspot?
> 
> This PR does 3 things:
> 
> * Adds a port of ZGC's MRSW mutex (see [0]) to Hotspot
> * Adds some new utilities for writing multi-threaded tests.
> * Adds some tests for MRSW Mutex using these new utilities
> 
> The ticket has some comments which might be worth checking out: https://bugs.openjdk.org/browse/JDK-8291714
> 
> [0] Original source code here: https://github.com/openjdk/zgc/blob/zgc_generational/src/hotspot/share/gc/z/zJNICritical.cpp

HotSpot Mutex has a rank, used (in debug builds) to detect potential deadlock
situations.  These new mutexes don't have that feature, and don't interact
with Mutex in that way.  The rank system has pros and cons, but I'm not sure
just ignoring here is a good thing.

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

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


More information about the hotspot-runtime-dev mailing list