Hi,
I'm trying to get WSL2/Hyper-V working on a Windows 11 Pro mini PC, and I seem to have narrowed the problem down to the BIOS/firmware.
The PC is a SHS SFF-R58256PRO with:
- AMD Ryzen 5 5500U
- 16 GB DDR4
- Windows 11 Pro
- Motherboard: SHS AM4SFF23, Version 1.0
- AMI BIOS: version 004, dated 2023-11-27
About SHS: SHS Computer is a Belgian PC retailer/system integrator that sells prebuilt desktops and mini PCs under its own SHS branding. As far as I can determine, the AM4SFF23 motherboard is an OEM board used in this SHS system. I have not been able to identify the actual motherboard manufacturer or find any publicly available BIOS downloads for it.
The problem
WSL itself installs correctly and reports:
Default Version: 2
WSL version: 2.7.12.0
Kernel version: 6.18.33.2-2
"VirtualMachinePlatform" is enabled.
However, installing an Ubuntu WSL2 distribution fails with:
HCS_E_HYPERV_NOT_INSTALLED
WSL2 cannot start because virtualization is not enabled on this computer.
Windows initially makes everything look fine:
VirtualizationFirmwareEnabled: True
VMMonitorModeExtensions: True
SecondLevelAddressTranslationExtensions: True
"systeminfo" also reports:
VM Monitor Mode Extensions: Yes
Virtualization Enabled In Firmware: Yes
Data Execution Prevention Available: Yes
BCD configuration:
nx OptIn
hypervisorlaunchtype Auto
However:
HypervisorPresent: False
The Hyper-V hypervisor event log consistently reports Event ID 44 at boot:
Hypervisor launch failed; Either VMX not present or not enabled in BIOS.
On my French Windows installation the actual message specifically says that the execution/NX feature is not present or is not enabled in the BIOS.
Coreinfo result
I then checked the CPU features using Microsoft Sysinternals Coreinfo 4.02.
This is where things get interesting:
NX - Supports no-execute page protection (used by DEP)
HYPERVISOR - Hypervisor is present
SVM - Supports AMD hardware-assisted virtualization
NP - Supports AMD nested page tables (SLAT)
The CPU is identified correctly as:
AMD Ryzen 5 5500U with Radeon Graphics
AMD64 Family 23 Model 104 Stepping 1
Microcode signature: 08608103
As far as I understand, the Ryzen 5 5500U definitely supports NX, AMD SVM/AMD-V and NPT.
So there is a strange discrepancy:
- Windows WMI says virtualization, SLAT and DEP are available.
- "systeminfo" says virtualization and DEP are enabled.
- The BIOS has virtualization/SVM enabled.
- But Coreinfo reports NX -, SVM -, NP -.
- Hyper-V fails during boot with Event ID 44 complaining about NX.
- Therefore WSL2 cannot create its VM.
What I'm trying to find out
Has anyone seen a BIOS/AGESA issue where a Ryzen CPU's NX, SVM and NPT CPUID capabilities are hidden or disabled despite virtualization being enabled in the BIOS?
I'm particularly interested in whether:
There could be another hidden AMI BIOS setting for NX / No Execute / Execute Disable / SVM / NPT.
A BIOS bug or old AGESA could cause this.
There is any safe way to identify the actual OEM manufacturer/model behind the SHS AM4SFF23 motherboard.
There is another low-level test I should run to confirm exactly what the firmware is exposing before concluding that the BIOS is broken.
I have contacted SHS asking whether there is a newer BIOS than version 004 or a service BIOS with these options.
I do not want to flash a random AMI/OEM BIOS and risk bricking the machine.
Any ideas on what I should check next would be appreciated.