JDK-8238596 : AVX enabled by default for Skylake even when unsupported
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 11.0.6,14
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • CPU: x86
  • Submitted: 2020-02-06
  • Updated: 2022-02-24
  • Resolved: 2020-02-10
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.

To download the current JDK release, click here.
JDK 11 JDK 13 JDK 14 JDK 15
11.0.7-oracleFixed 13.0.3Fixed 14.0.1Fixed 15Fixed
Related Reports
Duplicate :  
Relates :  
Description
The fix for jdk-8221092 causes UseAVX to default to 2 for Skylake server CPUs (CPUID Model 0x55) even in environments where AVX support is not enabled. This causes HotSpot to crash with an SIGILL.

While the Skylake hardware may support several of the AVX extensions, AVX support is often disabled when using a hypervisor. For example, some older (but still officially supported) hypervisors do not have support for XSAVE and therefor disable AVX to ensure they do not corrupt anything. As another example, I was able to reproduce this crash by disabling nested paging on VirtualBox (which also results in AVX being disabled) and running "java -version".

While this can be worked around by setting UseAVX=0, the fact that HotSpot now crashes OOTB in these environments is a serious regression that needs to be fixed.
Comments
Fix Request (13u) same reason as 14u above
25-03-2020

Fix Request (14u) Same reason as 11u above.
14-02-2020

Fix Request (11u) This fixes the regression introduced in 11.0.6, and keeps codebases in sync (I see 11.0.7-oracle). Patch (https://hg.openjdk.java.net/jdk/jdk/rev/022eb7fb53f4) applies with minor conflict in copyright line year, patched version passes tier1, tier2, tier3 on Linux x86_64.
12-02-2020

I pushed into mainline and then into 11u, but it looks like HG Updates picked up the 11 backport before the mainline push, making this the "main" bug. Not ideal but I think it is probably best to leave this as-is as opposed to trying to "fix it" somehow.
12-02-2020

This appears to be a regression introduced with jdk-8221092.
07-02-2020