On Thu, 12 Nov 2026 03:52:38 GMT, Phil Race <[email protected]> wrote:
>> The native code on macOS which initializes cached JNI refs is not thread >> safe. >> The fix is to use the macOS dispatch_once mechanism as a lock. >> The fix is essentially all in JNIUtilities.h. There's some refactoring of >> the macros in there to make things a bit cleaner >> and DECLARE_*_ONLY macros are added which the non-local clients now use to >> declare variables. >> >> The problem can be demonstrated with multi-threaded initialisation, and >> using -Xcheck:jni >> A case which reproduces "fairly often" has been added as a test. >> >> --------- >> - [x] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Phil Race has updated the pull request incrementally with one additional > commit since the last revision: > > 8393035 LGTM ------------- Marked as reviewed by psadhukhan (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/33481#pullrequestreview-5869640467
