JDK-8249672 : Include microcode revision in features_string on x86
Type:Enhancement
Component:hotspot
Sub-Component:runtime
Affected Version:11,15,16
Priority:P3
Status:Resolved
Resolution:Fixed
Submitted:2020-07-17
Updated:2021-04-21
Resolved:2020-07-21
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
Add microcode revision to CPU features string (which is included in hs_err files) to help analyze failures on x86.
Comments
Fix request (11u) -- will label after testing completed.
I would like to downport this for parity with 11.0.10-oracle.
I had to resolve vm_version_x86:
http://mail.openjdk.java.net/pipermail/jdk-updates-dev/2020-September/003765.html
03-09-2020
Fix Request for JDK 15.
The changes are important to track a reason of Java application crash which may caused by JDK-8248315 issue.
Changes are small and safe because they do not affect code execution. They provide important additional information about system.
Tested on all our supported platforms.
webrev: http://cr.openjdk.java.net/~sviswanathan/Vladimir/8249672/webrev.03/
review thread: https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/2020-July/039071.html
28-07-2020
[~robm] I thought the process is the same as for 11u-cpu where we don't need approval.
This fix is very important for sustaining group due to P1 JDK-8248315.
Can I retroactively request push approval for JDK 15?
28-07-2020
[~kvn] [~sviswanathan] This fix has been pushed to http://hg.openjdk.java.net/jdk-updates/jdk15u without permission. I am retroactively approving for now. In future be sure to use the process detailed at: http://openjdk.java.net/projects/jdk-updates/approval.html for future openjdk pushes.
On Fri, Jul 17, 2020 at 10:22 PM Ivanov, Vladimir A <vladimir.a.ivanov@intel.com> wrote:
>
> The reported microcode version for different OSes loos as:
>
> Linux (RHEL7.7):
>
> # cat hs_err_pid251046.log |grep microc
>
> CPU: total 112 (initial active 112) (28 cores per cpu, 2 threads per core)
> family 6 model 85 stepping 4 microcode 0x200005e, cmov, cx8, fxsr, mmx,
> sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, vzeroupper, avx, avx2, aes,
> clmul, erms, rtm, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx,
> fma, clflush, clflushopt, clwb
>
>
>
> Windows (Win10, v1809):
>
> CPU: total 4 (initial active 4) (2 cores per cpu, 2 threads per core)
> family 6 model 142 stepping 9 microcode 0xb4, cmov, cx8, fxsr, mmx, sse,
> sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, vzeroupper, avx, avx2, aes,
> clmul, erms, rtm, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx,
> fma, clflush, clflushopt
>
>
>
> MacOS (Darwin):
>
> $ cat hs_err_pid95187.log |grep microc
>
> CPU: total 8 (initial active 8) (4 cores per cpu, 2 threads per core)
> family 6 model 126 stepping 5 microcode 0x78, cmov, cx8, fxsr, mmx, sse,
> sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, vzeroupper, avx, avx2, aes,
> clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx, sha,
> fma, clflush, clflushopt
17-07-2020
First version:
http://cr.openjdk.java.net/~sviswanathan/Vladimir/8249672/webrev.00/
#if defined(IA32) || defined(AMD64) can be removed in os_linux_x86.cpp since it is x86 specific file.
17-07-2020
Note, we are late for JDK 15 release but we should backport changes into first 15 update release.