ESXi CPUID Max Value Limit
There are BIOS settings that you only become aware of when the system doesn't do what it's supposed to - for example, the CPUID Maximum Value Limit in the context of VMware ESXi.
Failing ESXi installation
Installing the VMware hypervisor ESXi on a computer is a pretty easy task. Already done many times, quite simple and self-explanatory. What is needed is hardware that supports virtualization (for Intel VT-x), both from the CPU and the motherboard.
However, when trying to install ESXi 6.7 on a small Xeon system, I encountered the following error immediately after loading the installation files:
VMB: 378: Unexpected exception 14 @ 0x418005a9afdf VMB: 380: Code start: 0x418005a00000 … VMB: 388: error code 0x0 rip 0x418005a9afdf cs 0x8 … VMB: 84: Halting
The system is already a few years old, so at first I thought the ESXi version is simply too new. So I started the installation of ESXi 6.5 which failed at the same progress with a similar error:
Can’t detect the last level cache
Since I can tell that the hardware is suitable and functional for virtualization, it must be the CPU configuration in the BIOS. I was to be proven right.
What is the CPUID Maximum Value Limit?
Forums on the Internet have referred to a misconfiguration of the CPUID Maximum Value Limit. But what does this mean exactly?
CPUID reflects the information that the CPU reveals about itself when requested by the operating system. Important here is the maximum value of the CPUID, which determines which information is transmitted to the operating system. With older operating systems this maximum value had to be limited for compatibility reasons. This was the only way the operating system could process all values. However, current operating systems, such as VMware ESXi 6.x, can also process higher values and also expect them - at least with ESXi.
Basically, you might want to deactivate the limitation of the CPUID in the CPU configuration menu of the BIOS for all current operating systems. This way the installation of VMware ESX will work as well.