RFR 8066171: Out of order with Metaspace allocation lock

Coleen Phillimore coleen.phillimore at oracle.com
Thu Dec 4 22:03:27 UTC 2014

Thank you Serguei.
On 12/3/14, 4:29 PM, serguei.spitsyn at oracle.com wrote:
> It looks good to me.
> Thanks,
> Serguei
> On 12/3/14 8:59 AM, Coleen Phillimore wrote:
>> 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