RFR: 8355638: Allow -Xlog:aot to be used as an alias for -Xlog:cds when using AOT cache
Ioi Lam
iklam at openjdk.org
Tue May 6 22:33:39 UTC 2025
*Specification:*
When the JVM is started with any of the following options: AOTCache, AOTCacheOutput, AOTConfiguration, AOTMode:
- Any `-Xlog` options that starts with the `aot` tag should also match any `LogTagSets` whose first tag is `LogTag::_cds`
- When printing a `LogTagSet` whose first tag is `LogTag::_cds`, if its `tags` decoration is to be printed, then the first tag in the decoration should be printed as `aot`.
*Examples:*
Control case -- this is an example of an old "cds" log. The decoration should be printed as "cds" to be backwards compatible
$ java -Xshare:auto -Xlog:cds --version | grep trying
[0.003s][info][cds] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
"aot" can be used to select the "cds" log, but the log will be printed with "aot" as its decoration
$ java -XX:AOTMode=auto -Xlog:aot --version | grep trying
[0.015s][info][aot] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
When using new -XX:AOT flags, even if you specify -Xlog:cds, the output will use "aot" decoration
$ java -XX:AOTMode=auto -Xlog:cds --version | grep tryi
[0.004s][info][aot] trying to map /jdk3/bld/vox/images/jdk/lib/server/classes.jsa
When using new -XX:AOT flags, error messages should be logged with "aot" decoration even when no -Xlog flags are specified
$ java -XX:AOTMode=auto -XX:AOTCache=nofile.aot --version
[0.009s][error][aot] An error has occurred while processing the AOT cache. Run with -Xlog:aot for details.
[0.009s][error][aot] Loading AOT cache failed: nofile.aot
java 25-internal 2025-09-16
Java(TM) SE Runtime Environment (build 25-internal-adhoc.iklam.vox)
Java HotSpot(TM) 64-Bit Server VM (build 25-internal-adhoc.iklam.vox, mixed mode)
-------------
Commit messages:
- clean up of existing UL logs for cds
- Fixed test cases
- Merge branch 'master' into 8355638-xlog-aot-as-alias-for-xlog-cds
- Much more simplification
- Much simplified
- More tightening .... but this may be the wrong approach
- Added LogTagSet::verify_for_aot_aliases()
- Simplified design/implementation: aliasing will always happen with new workflow; added PrintCDSLogsAsAOTLogs diagnostic flag
- update
- 8355638: Allow -Xlog:aot to be used as an alias for -Xlog:cds
Changes: https://git.openjdk.org/jdk/pull/24895/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24895&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8355638
Stats: 185 lines in 13 files changed: 160 ins; 0 del; 25 mod
Patch: https://git.openjdk.org/jdk/pull/24895.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24895/head:pull/24895
PR: https://git.openjdk.org/jdk/pull/24895
More information about the hotspot-runtime-dev
mailing list