RFR: 8276658: Clean up JNI local handles code [v3]
    Coleen Phillimore 
    coleenp at openjdk.java.net
       
    Fri Nov 12 16:22:05 UTC 2021
    
    
  
> JNI Local handles can only be created by JavaThread (there's an assert in make_local) but the fields are added to Thread.
> Move the fields to JavaThread and adding JavaThread* argument.
> Also, the global freelist isn't very useful now that global JNI handles don't use JNIHandleBlock, so the locking that claims incorrectly to block for safepoint is removed.
> Lastly, there's at least 3 places that duplicate pushing a new JNIHandleBlock to the thread for temporarily adding JNI local handles. These have been moved to common code with a JNIHandleMark object, moved from jvmci code.
> The commits are separate to help reviewing, but the entire change has been tested together with tier1-6.
> The commits in this change have been performance tested individually and together with no meaningful differences from mainline.
Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
  Remove redundant assert.
-------------
Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6336/files
  - new: https://git.openjdk.java.net/jdk/pull/6336/files/f31dfeee..f24e32c1
Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6336&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6336&range=01-02
  Stats: 2 lines in 1 file changed: 0 ins; 2 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6336.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6336/head:pull/6336
PR: https://git.openjdk.java.net/jdk/pull/6336
    
    
More information about the hotspot-dev
mailing list