Request for reviews (XS): 7094138: JSR 292: JRuby junit test fails in CallSite.setTargetNormal: obj->is_oop() failed: sanity check
Tom Rodriguez
tom.rodriguez at oracle.com
Fri Oct 21 11:20:26 PDT 2011
Looks good. We should see if we can get this into 7u2.
tom
On Oct 21, 2011, at 2:17 AM, Christian Thalinger wrote:
> http://cr.openjdk.java.net/~twisti/7094138/
>
> 7094138: JSR 292: JRuby junit test fails in CallSite.setTargetNormal: obj->is_oop() failed: sanity check
> Reviewed-by:
>
> InterpreterRuntime::resolve_get_put and
> MHN_setCallSiteTargetNormal/MHN_setCallSiteTargetVolatile are calling
> Universe::flush_dependents_on under the Compile_lock to make sure the
> CallSite target values don't change during a compile in flight. But
> both arguments for call_site and target are not held in a Handle but a
> plain oop. This can result in stale oops.
>
> Tested with JRuby test_respond_to.rb.
>
> src/share/vm/interpreter/interpreterRuntime.cpp
> src/share/vm/prims/methodHandles.cpp
>
More information about the hotspot-compiler-dev
mailing list