RFR (XXS): 8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java

Christian Thalinger christian.thalinger at oracle.com
Tue Dec 11 16:53:08 PST 2012


Thank you, John and Vladimir.  -- Chris

On Dec 11, 2012, at 4:36 PM, John Rose <john.r.rose at oracle.com> wrote:

> Good!  — John
> 
> On Dec 11, 2012, at 3:47 PM, Christian Thalinger wrote:
> 
>> http://cr.openjdk.java.net/~twisti/8003238
>> 
>> 8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java
>> Reviewed-by:
>> 
>> The VM code for setTarget takes the Compile_lock and flushes all
>> dependent methods.  After that we leave the lock and set the new
>> target in the CallSite object.
>> 
>> The problem here is that after we left the lock an already compiled
>> method could be installed with dependencies that are still correct
>> because the CallSite.target hasn't been updated yet.
>> 
>> The fix is to move the set_target calls inside the Compile_lock.
>> 
>> src/share/vm/prims/methodHandles.cpp
>> 
> 



More information about the hotspot-compiler-dev mailing list