RFR 8066171: Out of order with Metaspace allocation lock
    Coleen Phillimore 
    coleen.phillimore at oracle.com
       
    Wed Dec  3 16:59:58 UTC 2014
    
    
  
Summary: Lock resolved_references instead.
When I took out the constant pool mutex, I thought I could use the 
metaspace to synchronize this code sequence, but the metaspace_lock is 
out of order with the DirtyCardQ_CBL_mon lock that can sometimes be 
taken with obj_at_put() in an object array.   Since there is always a 
resolved_reference objArrayOop attached to this class, we can lock this 
for this cpCache entry.  John and the JSR292 guys tell me that this code 
sequence needs to be locked against multiple setters.
Tested with jdk/test/java/lang/invoke tests, nsk.quick.testlist.
open webrev at http://cr.openjdk.java.net/~coleenp/8066171/
bug link https://bugs.openjdk.java.net/browse/JDK-8066171
Thanks,
Coleen
    
    
More information about the hotspot-dev
mailing list