On Fri, 9 May 2025 17:45:08 GMT, Ioi Lam <ik...@openjdk.org> wrote:

>> This is an alternative (and opposite) approach to 
>> https://github.com/openjdk/jdk/pull/24895. We basically convert most `[cds]` 
>> logs to `[aot]` logs. However, for the few logs that might be needed by 
>> existing user scripts, we use macros like `aot_log_info`, `aot_log_debug` so 
>> that they can be selected/printed using the `[cds]` tag. 
>> 
>> We have a few hundred logs that start with `[cds]`. To aid reviewing, this 
>> PR will convert only part of them. I will create a second PR that coverts 
>> the rest of the logs.
>> 
>> Please see **aotLogging.hpp** for how the macros work.
>
> Ioi Lam has updated the pull request incrementally with one additional commit 
> since the last revision:
> 
>   More conversion; clean up; bug fixes

Some drive-by comments, not a full review as I find this all rather confusing 
because I don't understand why we used "cds" in AOT specific code in the first 
place. It makes perfect sense to me that AOT specific code logs to "aot".

It makes far less sense to me why you ever introduced logging that required 
"cds" and "aot" in the first place, so getting rid of that is a good thing.

For code shared between cds and aot it is less clear to me how to proceed. If 
the intent is that CDS will be no more and everything is AOT, then a transition 
path is needed for the logging. I guess this is where your macros come in, 
though I'm a bit unclear as to why it can be controlled by a user-defined 
command-line flag rather than only by the CDS/AOT selection arguments operating 
directly on an internal CDS/AOT configuration setting. ???

src/hotspot/share/cds/aotLogging.hpp line 69:

> 67: //
> 68: //     $ java -Xlog:aot -XX:AOTCache=bad.aot ...
> 69: //     [0.020s][info][cds] trying to map bad.jsa

Is it `bad.jsa` or `bad.aot`?

src/hotspot/share/cds/aotLogging.hpp line 77:

> 75: //     - These logs can be selected ONLY with -Xlog:aot. They are always 
> printed with [aot] decoration
> 76: //
> 77: // [2] When using CDS archives, and PrintAOTLogsAsCDSLogs=true

I guess I am missing some basic knowledge about AOT here. If we are using 
legacy CDS not AOT, then why would there be any AOT log statements ???

src/hotspot/share/cds/aotLogging.hpp line 146:

> 144:       LogTagSetMapping<LogTag::_aot, T1, T2, T3, 
> T4>::tagset().vwrite(level, fmt, args);
> 145:     }
> 146:   }

```suggestion if possible
    LogTag tag =  PrintAOTLogsAsCDSLogs ? LogTag::_cds : LogTag::_aot;
    LogTagSetMapping<tag, T1, T2, T3, T4>::tagset().vwrite(level, fmt, args);
  }

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

PR Review: https://git.openjdk.org/jdk/pull/25136#pullrequestreview-2835783884
PR Review Comment: https://git.openjdk.org/jdk/pull/25136#discussion_r2086245590
PR Review Comment: https://git.openjdk.org/jdk/pull/25136#discussion_r2086248325
PR Review Comment: https://git.openjdk.org/jdk/pull/25136#discussion_r2086253167

Reply via email to