RFR: 8352001: AOT cache should not contain classes injected into built-in class loaders [v4]
Calvin Cheung
ccheung at openjdk.org
Wed Apr 16 17:19:46 UTC 2025
On Wed, 16 Apr 2025 17:12:07 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.
>
> Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:
>
> Removed unnecessary include
Marked as reviewed by ccheung (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/24046#pullrequestreview-2773280416
More information about the hotspot-dev
mailing list