On Thu, 7 Mar 2024 01:38:56 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:
>> This change creates a new sort of native recursive lock that can be held >> during JNI and Java calls, which can be used for synchronization while >> creating objArrayKlasses at runtime. >> >> Passes tier1-7. > > Coleen Phillimore has updated the pull request incrementally with one > additional commit since the last revision: > > Dean's comments. This looks good to me. Thanks for working through the details with me. src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp line 121: > 119: { > 120: // To get a consistent list of classes we need MultiArray_lock to > ensure > 121: // array classes aren't created during this walk. This walks through > the Just curious but how can walking the set of classes trigger creation of array classes? src/hotspot/share/runtime/mutexLocker.hpp line 335: > 333: > 334: // Instance of a RecursiveLock that may be held through Java heap > allocation, which may include calls to Java, > 335: // and JNI event notification for resource exhausted for metaspace or > heap. s/exhausted/exhaustion/ ------------- Marked as reviewed by dholmes (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/17739#pullrequestreview-1921323899 PR Review Comment: https://git.openjdk.org/jdk/pull/17739#discussion_r1515402581 PR Review Comment: https://git.openjdk.org/jdk/pull/17739#discussion_r1515406082