RFR (S) 8245487: Potential double-free of interfaces array

Lois Foltan lois.foltan at oracle.com
Thu Jun 4 14:34:22 UTC 2020

On 6/4/2020 7:36 AM, coleen.phillimore at oracle.com wrote:
> Summary: free _local_interfaces when we free _transitive_interfaces 
> since they can share memory.
> Tested with tier1-3, also test case with fastdebug and product 
> builds.  ClassLoaderDataGraph::verify is enabled in product for 
> -XX:+VerifyBeforeExit.
> open webrev at http://cr.openjdk.java.net/~coleenp/2020/8245487.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8245487
> Thanks to Fred for finding the problem and testing on valhalla where 
> it was first observed, and to Ioi for the test case (and finding the 
> problem too!)
> Thanks,
> Coleen

Looks good Coleen!

Minor comment on the summary description within the test, 
classFileParserBug/TestBadPackageWithInterface.java.  The test 
runtime/modules/JVMDefineModule.java does already test for a resulting 
IAE when a package named "java" is defined to a class loader other than 
the boot or platform class loader.  So my understanding is that 
TestBadPackageWithInterface.java is really testing that if an exception 
is raised when a class is defined, then InstanceKlass::verify_on() will 
exit cleanly, correct?


More information about the hotspot-runtime-dev mailing list