Jigsaw Enhancement RFR round #2: 8159147 Add ClassLoader parameter to new ClassFileTransformer transform method

Daniel D. Daugherty daniel.daugherty at oracle.com
Thu Jun 30 20:35:31 UTC 2016


On 6/30/16 12:57 AM, serguei.spitsyn at oracle.com wrote:
> Please, review the Jigsaw fix for the enhancement:
> https://bugs.openjdk.java.net/browse/JDK-8159147
>
> Just a sanity check is needed.
>
> This update has fixes related to the Mandy's comments on the 
> ClassFileTransformer.java:
>   - one of the @implSpec statements is corrected
>   - <code>null</code> has been replaced with {@code null}
>
>
> Jdk webrev:
> http://cr.openjdk.java.net/~sspitsyn/webrevs/2016/jdk/8159147-Jigsaw-jli.jdk2/

Thumbs up.

Don't know if I qualify as sane though... :-)

Dan

>
>
> Summary:
>
> As noted in JDK-8155207 
> <https://bugs.openjdk.java.net/browse/JDK-8155207> and elsewhere, one 
> of the outstanding items for java.lang.instrument is
>   whether the new ClassFileTransformer transform method should 
> provider the ClassLoader parameter.
>   After further consideration then this seems useful and avoids agents 
> needing permissions to invoke Module::getClassLoader.
>   The fix is to add the ClassLoader as the second parameter of the 
> ClassFileTransformer#transform() method.
>
>  This fix also replaces the usage of the JVM_GetModuleByPackageName 
> with the JVMTI GetNamedModule in the JPLISAgent.c.
>  It is why this fix depends on the fix of the JVMTI enhancement:
> https://bugs.openjdk.java.net/browse/JDK-8159145
>  and so, must be pushed after the JDK-8159145.
>
>
> Testing:
>    Ran the Jtreg java/lang/instrument tests.
>    Ran two updated jtreg j.l.i tests:
>       java/lang/instrument/RetransformAgent.java
>       java/lang/instrument/SingleTransformerTest.java
>
> Thanks,
> Serguei

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20160630/00d14c85/attachment.html>


More information about the serviceability-dev mailing list