RFR(S): 8200078: [Graal] runtime/appcds/GraalWithLimitedMetaspace.java crashes in visit_all_interfaces
calvin.cheung at oracle.com
Thu Mar 29 21:11:56 UTC 2018
On 3/29/18, 1:27 PM, mikhailo wrote:
> The test portion looks good to me.
Thanks for taking a look.
> I have one question - are you able to reliably reproduce this issue
> using GraalWithLimitedMetaspace.java
I could reproduce it fairly easily on macosx.
On linux-x64 out of 30+ runs, I've seen it passed (CDS dump finished
sucessfully) once. That's why I've added checking exitValue of 0.
> or MaxMetaspaceSize.java ?
Yes, this one reproduces with small metaspace size in CDS mode not
This test should be very reliable or we will see failure in hs-tier1
The change is for adjusting the expected output because CDS dump will
fail earlier upon OOM.
> Thank you,
> On 03/29/2018 10:49 AM, Calvin Cheung wrote:
>> bug: https://bugs.openjdk.java.net/browse/JDK-8200078
>> webrev: http://cr.openjdk.java.net/~ccheung/8200078/webrev.00/
>> During CDS dumping, when a class fails to load due to OOM
>> (insufficient metaspace), GC tries to free the class which will in
>> turn frees its _transitive_interfaces. But if the
>> _transitive_interfaces is being shared with another class which has
>> been loaded successfully, it will result in vm crash.
>> The change is to stop CDS dumping right away when an OOM due to
>> insufficient metaspace is encountered.
>> hs-tier1 through hs-tiers on Oracle supported platforms.
More information about the hotspot-runtime-dev