RFR (XXS): 8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java
christian.thalinger at oracle.com
Tue Dec 11 15:47:25 PST 2012
8003238: JSR 292: intermittent exception failure with java/lang/invoke/CallSiteTest.java
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.
More information about the hotspot-compiler-dev