Integrated: 8352001: AOT cache should not contain classes injected into built-in class loaders

Ioi Lam iklam at openjdk.org
Wed Apr 16 17:55:56 UTC 2025


On Fri, 14 Mar 2025 05:28:47 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> During an application's training run, it's possible to inject classes into the built-in platform/app class loaders with reflection calls. 
> 
> - Before [JDK-8348426](https://bugs.openjdk.org/browse/JDK-8348426), only the names of these classes were recorded in the AOT config file. When the AOT cache is generated, these classes are automatically filtered out.
> - Since [JDK-8348426](https://bugs.openjdk.org/browse/JDK-8348426), these classes are stored as parsed InstanceKlasses in the AOT config file, and will be transferred into the AOT cache. This new behavior may cause some applications to fail, as they may inject bytecodes that have environment dependencies.
> 
> For safety, this PR filters out such injected classes from the AOT config file.

This pull request has now been integrated.

Changeset: e433fa27
Author:    Ioi Lam <iklam at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/e433fa2719917cff6cb373e9a60981a7418e2f4f
Stats:     246 lines in 11 files changed: 239 ins; 0 del; 7 mod

8352001: AOT cache should not contain classes injected into built-in class loaders

Reviewed-by: ccheung, matsaave

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

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


More information about the hotspot-dev mailing list