[9] RFR 8146653: Debug version missing in hs_err files and on internal version after Verona

Alejandro E Murillo alejandro.murillo at oracle.com
Tue Jan 19 17:05:16 UTC 2016


On 1/17/2016 9:05 PM, David Holmes wrote:
> Hi Alejandro,
>
> On 16/01/2016 9:31 AM, Alejandro E Murillo wrote:
>>
>> Hi Dan, thanks a lot for the prompt review
>> I  applied all the changes, revised webrev (with proper links) is here:
>>
>> http://cr.openjdk.java.net/~amurillo/9/8146653/index.html
>
> Seeing this all together now I don't think alternate_jdk_debug_level 
> warrants being added to Abstract_VM_version. The logic could be used 
> directly inline in VMError.cpp. If it were used more than once then 
> perhaps ... though printable_jdk_debug_level might be a better name in 
> that case (still not a great name but better IMHO :) ).
Now that you mention it, there's some library code that may also use it.
There's also the code to check for not provided, which will have to 
replicate,
so I think I'll keep it. But I'll change the name to "printable"

Thanks for this review and the discussion prior to sending this out
Alejandro

>
> Thanks,
> David
>
>
>> Thanks
>> Alejandro
>>
>> On 1/15/2016 3:09 PM, Daniel D. Daugherty wrote:
>>> On 1/15/16 2:51 PM, Alejandro E Murillo wrote:
>>>>
>>>> Please review the following fix for JDK-8146653
>>>> <https://bugs.openjdk.java.net/browse/JDK-8146653>:
>>>> Debug version missing in hs_err files and on internal version after
>>>> Verona
>>>>
>>>> Webrev: http://cr.openjdk.java.net/~amurillo/9/8146653/
>>>
>>> Your version of webrev generated broken nav links for
>>> the "frames" version. Shows 404...
>>>
>>>
>>> src/share/vm/runtime/vm_version.cpp
>>>     L242:   return strcmp(DEBUG_LEVEL, "release") ?
>>>     L243:       VMNAME " (" DEBUG_LEVEL " " INTERNAL_VERSION_SUFFIX
>>>     L244:           :
>>>     L245:       VMNAME " (" INTERNAL_VERSION_SUFFIX;
>>>
>>>         No implied booleans on this part: strcmp(DEBUG_LEVEL, 
>>> "release")
>>>
>>>         Also I think this would be more HotSpot style:
>>>
>>>         return strcmp(DEBUG_LEVEL, "release") == 0
>>>             ? VMNAME " (" INTERNAL_VERSION_SUFFIX
>>>             : VMNAME " (" DEBUG_LEVEL " " INTERNAL_VERSION_SUFFIX;
>>>
>>>         where the "usual case" is first and the indenting is more
>>>         HotSpot like...
>>>
>>>     L258:   return strcmp(DEBUG_LEVEL, "release") ? DEBUG_LEVEL " " 
>>> : "";
>>>
>>>         Similarly here:
>>>
>>>         return strcmp(DEBUG_LEVEL, "release") == 0 ? "" : DEBUG_LEVEL;
>>>
>>> src/share/vm/runtime/vm_version.hpp
>>>     No comments.
>>>
>>> src/share/vm/utilities/vmError.cpp
>>>     L234:    const char* runtime_version =
>>> JDK_Version::runtime_version() != NULL ?
>>>     L235: JDK_Version::runtime_version() : "";
>>>     L236:    const char* jdk_debug_level =
>>> Abstract_VM_Version::alternate_jdk_debug_level() != NULL ?
>>>     L237: Abstract_VM_Version::alternate_jdk_debug_level() : "";
>>>
>>>         L237 indent needs three more spaces. So does L235, but that's
>>>         not your issue.
>>>
>>>     L239:    st->print_cr("# JRE version: %s (%s) (%sbuild %s)",
>>> runtime_name, buf,
>>>     L240:                  jdk_debug_level, runtime_version);
>>>
>>>         L240 indent has one too many spaces.
>>>
>>> Dan
>>>
>>>>
>>>> Background:
>>>> Verona removed the debug info from version related system properties
>>>> and that's now specified on a new system property called jdk.debug.
>>>> The version header spitted in hs_err files was updated to include
>>>> debug info based on that change.
>>>> That info was also missing on the output for -Xinternalversion
>>>>
>>>> Thanks
>>>>
>>>
>>

-- 
Alejandro



More information about the hotspot-dev mailing list