[8u-dev] Request for approval: 8162766: Unsafe_DefineClass0 accesses raw oops while in _thread_in_native

Coleen Phillimore coleen.phillimore at oracle.com
Fri Oct 7 21:20:01 UTC 2016


Here's the (retested) fix using JVM_GetClassLoader.

open webrev at http://cr.openjdk.java.net/~coleenp/8162766.02/webrev

 From the history it seems that this part was backported with the 
Class.getClassLoader() speedup change, and the code was corrected in jdk9.

Thanks,
Coleen


On 10/7/16 4:19 PM, Leela Mohan wrote:
> Hi Coleen,
>
> Sorry i never came back after we found the issue. We are certainly 
> doing many unnecessary transitions from native to vm. It seems like, 
> we can certainly avoid them if we have UNSAFE_LEAF (equivalent to 
> JVM_LEAF) . But that might be larger change.
>
> Coming back to your change, I am wondering if we can use 
> "JVM_GetClassLoader" instead.
>
> Thanks,
> Leela
>
> On Fri, Oct 7, 2016 at 1:01 PM, Coleen Phillimore 
> <coleen.phillimore at oracle.com <mailto:coleen.phillimore at oracle.com>> 
> wrote:
>
>     Summary: Go to thread_in_vm to get the class_loader oop.
>
>     This error was found by Leela Venati.  Tested with jtreg hotspot/test.
>
>     open webrev at
>     http://cr.openjdk.java.net/~coleenp/8162766.01/webrev
>     <http://cr.openjdk.java.net/%7Ecoleenp/8162766.01/webrev>
>     bug link https://bugs.openjdk.java.net/browse/JDK-8162766
>     <https://bugs.openjdk.java.net/browse/JDK-8162766>
>
>     Thanks,
>     Coleen
>
>



More information about the jdk8u-dev mailing list