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

serguei.spitsyn at oracle.com serguei.spitsyn at oracle.com
Thu Jun 30 06:57:28 UTC 2016


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/


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/20160629/9743a2c2/attachment.html>


More information about the serviceability-dev mailing list