On Mon, 8 Jul 2024 19:01:05 GMT, Doug Simon <dnsi...@openjdk.org> wrote:

> This PR addresses intermittent failures in jtreg GC stress tests. The 
> failures occur under these conditions:
> 1. Using a libgraal build with assertions enabled as the top tier JIT 
> compiler. Such a libgraal build will cause a VM exit if an assertion or 
> GraalError occurs in a compiler thread (as this catches more errors in 
> testing).
> 2. A libgraal compiler thread makes a call into the VM (via `CompilerToVM`) 
> to a routine that performs a HotSpot heap allocation that fails.
> 3. The resulting OOME is wrapped in a GraalError, causing the VM to exit as 
> described in 1.
> 
> An OOME thrown in these specific conditions should not exit the VM as it not 
> related to an OOME in the app or test. Instead, the failure should be treated 
> as a bailout and the libgraal compiler should continue.
> 
> To accomplish this, libgraal needs to be able to distinguish a GraalError 
> caused by an OOME. This PR modifies the exception translation code to make 
> this possible.

This pull request has now been integrated.

Changeset: cf940e13
Author:    Doug Simon <dnsi...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/cf940e139a76e5aabd52379b8a87065d82b2284c
Stats:     103 lines in 6 files changed: 62 ins; 22 del; 19 mod

8335553: [Graal] Compiler thread calls into 
jdk.internal.vm.VMSupport.decodeAndThrowThrowable and crashes in OOM situation

Reviewed-by: yzheng, never, dholmes

-------------

PR: https://git.openjdk.org/jdk/pull/20083

Reply via email to