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