RFR: 8313899: JVMCI exception Translation can fail in TranslatedException.<clinit> [v2]
Tobias Hartmann
thartmann at openjdk.org
Thu Aug 10 13:56:38 UTC 2023
On Thu, 10 Aug 2023 13:41:05 GMT, Doug Simon <dnsimon at openjdk.org> wrote:
>> In a test that stresses metaspace (such as `vmTestbase/vm/mlvm/hiddenloader/stress/oome/metaspace/Test.java`) that also uses `-Xcomp -XX:-TieredCompilation`, we've seen a failure in `TranslatedException.<clinit>` due to exhausted metaspace:
>>
>> java.lang.OutOfMemoryError: Metaspace
>> at jdk.internal.vm.TranslatedException.encodeThrowable(java.base at 21/TranslatedException.java:176)
>> at jdk.internal.vm.TranslatedException.<clinit>(java.base at 21/TranslatedException.java:61)
>> at jdk.internal.vm.VMSupport.encodeThrowable(java.base at 21/VMSupport.java:171)
>>
>> This PR pushes a fix such that this exception is properly handled in the VM (i.e. causing a compilation bailout) instead of leading to a VM crash.
>>
>> The PR includes 2 bits of debug code guarded by system properties that enable the handling to be tested in libgraal. The test itself is not included as libgraal is not part of OpenJDK.
>
> Doug Simon has updated the pull request incrementally with two additional commits since the last revision:
>
> - guard test-only code with ASSERT instead of !PRODUCT
> - omit test-only code in product build
Still looks good to me.
-------------
Marked as reviewed by thartmann (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/15198#pullrequestreview-1571929038
More information about the graal-dev
mailing list