Integrated: 8354484: SIGSEGV when supertype of an AOT-cached class is excluded

Ioi Lam iklam at openjdk.org
Tue Apr 22 16:57:49 UTC 2025


On Mon, 21 Apr 2025 20:38:24 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> Since [JDK-8353014](https://bugs.openjdk.org/browse/JDK-8353014), some classes that are loaded inside `LambdaFormInvokers::regenerate_holder_classes()` are marked as "AOT tooling classes". These classes are excluded from the AOT configuration file (which is generated at the end of the training run).
> 
> However, in the training run, application threads can run in parallel of `LambdaFormInvokers::regenerate_holder_classes()` and could load a subtype `C` of an "AOT tooling class" `S`.
> 
> This bug happened because `C` is included in the AOT configuration file, but `S`is excluded.
> 
> The fix in this PR -- for any `C` that is included, we also include all of its super types, even for the super types that are marked as "AOT tooling classes".

This pull request has now been integrated.

Changeset: e020752e
Author:    Ioi Lam <iklam at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/e020752ea4a6f74c321bc83597fadac51332e188
Stats:     28 lines in 2 files changed: 26 ins; 0 del; 2 mod

8354484: SIGSEGV when supertype of an AOT-cached class is excluded

Reviewed-by: ccheung, shade

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

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


More information about the hotspot-runtime-dev mailing list