RFR: 8027314: Java should recognize Diagnostic options if -XX:+UnlockDiagnosticVMOptions is not specified and print an informative message

Calvin Cheung calvin.cheung at oracle.com
Tue Jan 14 18:33:42 PST 2014


Thanks for your quick review, Vladimir.

Calvin

On 1/14/2014 5:50 PM, Vladimir Kozlov wrote:
> Looks good.
>
> Thanks,
> Vladimir
>
> On 1/14/14 5:22 PM, Calvin Cheung wrote:
>> This fix is for clarifying the error messages associated with vm options
>> of type
>> diagnostic, experimental, develop, and notproduct.
>>
>> Summary of fix:
>> - added an optional boolean (return_flag) parameter in Flag::find_flag()
>> so that
>> Arguments::process_argument() can inspect the returned flag and call
>> into get_locked_message();
>> - added new function is_product_build() in globals.[c|h]pp;
>> - in get_locked_message(), issues the appropriate error message;
>> - added a new test VMOptionWarning.java;
>> - minor cleanup in the existing tests - ConfigFileWarning,
>> CompilerConfigFileWarning.
>>
>> Sample output:
>> ---------------
>>
>> Before fix:
>>
>> C:\jdk8_i586\jdk1.8.0\bin\java -XX:+PrintInlining -version
>> Improperly specified VM option 'PrintInlining'
>> Error: Could not create the Java Virtual Machine.
>> Error: A fatal exception has occurred. Program will exit.
>>
>> After fix:
>>
>> C:\jdk8_i586\jdk1.8.0\bin\java -XX:+PrintInlining -version
>> Error: VM option 'PrintInlining' is diagnostic and must be enabled via
>> -XX:+UnlockDiagnosticVMOptions.
>> Error: Could not create the Java Virtual Machine.
>> Error: A fatal exception has occurred. Program will exit.
>>
>> Before fix:
>>
>> c:\jdk9_i586\jdk1.9.0\bin\java  -XX:+TraceJNICalls -version
>> Unrecognized VM option 'TraceJNICalls'
>> Did you mean '(+/-)TraceJNICalls'?
>> Error: Could not create the Java Virtual Machine.
>> Error: A fatal exception has occurred. Program will exit.
>>
>> After fix:
>>
>> C:\jdk8_i586\jdk1.8.0\bin\java -XX:+TraceJNICalls -version
>> Error: VM option 'TraceJNICalls' is develop and is available only in
>> debug version of VM.
>> Error: Could not create the Java Virtual Machine.
>> Error: A fatal exception has occurred. Program will exit.
>>
>> Testing:
>>      manual test via command line and the new test VMOptionWarning.
>>
>> Bug:
>>      https://bugs.openjdk.java.net/browse/JDK-8027314
>>
>> Webrev:
>>      http://cr.openjdk.java.net/~ccheung/8027314/webrev/
>>
>> thanks,
>> Calvin



More information about the hotspot-runtime-dev mailing list