RFR: 8142506: Reimplement TraceClassUnloading with Unified Logging.

Rachel Protacio rachel.protacio at oracle.com
Wed Nov 11 20:40:34 UTC 2015


Hi,

Looks good!

I have a few mostly aesthetic comments:
1. Can you put the conditional part of the if statements in parentheses 
for clarity throughout? e.g. src/share/vm/code/nmethod.cpp:1322
2. src/share/vm/logging/logTag.hpp - It looks like there was an 
incomplete merge
3. In the test, the comment parts around line 26 are oddly indented. And 
if you can add a line for "@bug 8142506".

Thanks,
Rachel

On 11/11/2015 3:23 PM, Max Ockner wrote:
> Hello,
> Please review my change.
>
> Bug:  https://bugs.openjdk.java.net/browse/JDK-8142506
> Webrev:  http://cr.openjdk.java.net/~mockner/classunload/
>
> Testing:
> Hotspot jtreg tests with and without "-Xlog:classunload=trace"
> runthese tests with "-Xlog:classunload=trace"
> new jtreg test for classunload output.
>
> Summary:
>
> There are two parts to this fix.
>
> (1) Existing logic for TraceClassUnloading has been replaced with 
> commands from Unified Logging.
>
> (2) Logging Alias Table. "-XX:+TraceClassUnloading" is now mapped to 
> "-Xlog:classunload=debug" in the new logging alias table in 
> arguments.cpp. Arguments are checked in the beginning of 
> parse_each_vm_init_arg and if an argument (such as 
> -XX:+TraceClassUnloading") is found in the alias table, the 
> optionString is substituted for the value found in the logging alias 
> table.
>
> I had to make a few decisions along that might raise questions, so I 
> will knock a few of them out now.
>
> Why didn't I use the existing alias table?
> - Existing alias table only stores the flag name (TraceClassUnloading) 
> and is meant for substituting one "-XX:" argument for another. This 
> does not solve our problem.
>
> Why didn't I process the logging aliases later in 
> parse_each_vm_init_arg, next to the rest of the "-XX:" argument 
> processing?
> - The main processing for "-XX:" options happens after processing of 
> "-Xlog" options. If we want the unified logging alias to be handled, 
> it needs to be substituted in before "-Xlog:" is handled.
>
> Why does "-XX:+TraceClassUnloading" get aliased to 
> "-Xlog:classunload=debug" and not "-Xlog:classunload=trace"?
> - logging statements that contained the develop-only flag "WizardMode" 
> were converted to "-Xlog:classunload=trace". The logging statements 
> that could have been previously been triggered in Product mode are all 
> now accessed by "-Xlog:classunload=debug". (We are updating logging, 
> but we are not updating the functionality of the old logging options. 
> Old options such as TraceClassUnloading are being aliased so they may 
> continue to work in *exactly* the way they did before.)
>
> Thanks,
> Max
>



More information about the hotspot-runtime-dev mailing list