VMware Cloud Community
al8
Contributor
Contributor
Jump to solution

CPU on Host incompatible with cpu feature requirements of VM

Now that I have the ESX server up and running,

I created a VM with 2 vCPU, 64 bit win2003, and 2 gig memory.

when I tried to power on, I got

"cpu on host is incompatible with cpu feature requirements of virtual machine;

problem detected at cpuID level 0x80000001 register 'edx' ".

So I went into BIOS and tried to enable Intel VT I/O (VT-d). Am I on the right track?

But on the right side of the screen,

there is a message: "Enable/Disable Intel VT for directed I/O by reporting the I/O device assignment to

VMM through DMAR ACPI tables". Any comment on the message or can I just enable it from BIOS?

Also in the BIOS under Miscellaneous Configuration, the "PCI 64 bit Resource Allocation" option is Disable.

Should that be enabled also?

Reply
0 Kudos
1 Solution

Accepted Solutions
TomHowarth
Leadership
Leadership
Jump to solution

Have you verfied that the Hosts Chip set supports EM64T as well as the machine BIOS supporting VT extensions.

if that is the case try to cold migrate the guest to another ESX Host and power on the Guest there, if that works vmotion the Guest back to the original Host

"Bravery is being the only one who knows you're afraid." - David Hackworth

Kind Regards

Tom,

Tom Howarth VCP / VCAP / vExpert
VMware Communities User Moderator
Blog: http://www.planetvm.net
Contributing author on VMware vSphere and Virtual Infrastructure Security: Securing ESX and the Virtual Environment
Contributing author on VCP VMware Certified Professional on VSphere 4 Study Guide: Exam VCP-410

View solution in original post

29 Replies
MR-T
Immortal
Immortal
Jump to solution

Is your hardware fitted with 64-bit chips?

Although the guests can be installed with x64, the underlying hardware must support this.

Reply
0 Kudos
al8
Contributor
Contributor
Jump to solution

Yes, it does. The hardware support it.

Strange, I have other VM's with 64bit OS. For some reason after ESX came back up after it crashed,

I get this message for the first time. Did not get the message on previous VM's creation.

So, do you think the 'Intel VT' setting and 'PCI 64-bit Resource Allocation' setting in the BIOS is the problem?

Reply
0 Kudos
al8
Contributor
Contributor
Jump to solution

By the way, I enabled the VT setting in the BIOS and am still getting

"CPU on Host incompatible with cpu feature requirements of VM" message when I tried to power-on the

VM with 64 bit OS installed.

Any other suggestions?

Reply
0 Kudos
TomHowarth
Leadership
Leadership
Jump to solution

Have you verfied that the Hosts Chip set supports EM64T as well as the machine BIOS supporting VT extensions.

if that is the case try to cold migrate the guest to another ESX Host and power on the Guest there, if that works vmotion the Guest back to the original Host

"Bravery is being the only one who knows you're afraid." - David Hackworth

Kind Regards

Tom,

Tom Howarth VCP / VCAP / vExpert
VMware Communities User Moderator
Blog: http://www.planetvm.net
Contributing author on VMware vSphere and Virtual Infrastructure Security: Securing ESX and the Virtual Environment
Contributing author on VCP VMware Certified Professional on VSphere 4 Study Guide: Exam VCP-410
al8
Contributor
Contributor
Jump to solution

It seemed that vtx instead of vtd needed to be enabled. Now 64-bit VM's are able to power-on and run.

Thanks.

Reply
0 Kudos
sevo77
Contributor
Contributor
Jump to solution

Hi,

What do you mean with VTX instead of VTD? Is it a optin on BIOS. I have the same problem with two DL380 servers, one is G4 and the other is G5. When I try Vmotion with powered on machine, the message is the same. When machine is powered of, VMotion(Migration) is OK.

Can you help me with resolving this problem?

Reply
0 Kudos
oreeh
Immortal
Immortal
Jump to solution

Your issue is different.

Since your hosts use different (VMotion incompatible) CPUs you have to define a proper CPU masking.

See KB entry 1991 and KB entry 1993 for details.

Reply
0 Kudos
sevo77
Contributor
Contributor
Jump to solution

Thank you verry much, Oreeh. I`ve red the KB but can`t find my solution

The log from "Migration":

Host CPU is incompatible with the virtual machine`s requirements at CPUID level 0x1 register 'eax'

host bits: 0000 :0000:0000:0000:0000:1111:0100:0001

reqired: 0000:0000:0000:xxxx:00xx:0110:xxxx:xxxx

All the info from KB is for ecx, what could be the string for eax?

Reply
0 Kudos
al8
Contributor
Contributor
Jump to solution

Hi,

Actually what I meant to say was that in the BIOS setting under Proccessor, there's an option

for vmx setting. I just enabled it. There's also another option called VTd setting which is not the one

to be enabled for the VM with 64-bit OS to run. So, I would try to look for the vmx option in the BIOS

and enable that. Hope that helps and would resolve the problem.

Reply
0 Kudos
oreeh
Immortal
Immortal
Jump to solution

Should be

--:::xxxx:xx:----:xxxx:xxxx</eax>

Reply
0 Kudos
awhite11
Contributor
Contributor
Jump to solution

On a Dell Poweredge 2950 Server - Reboot server and login to BIOS (F2). Scroll down to CPU and hit enter. Make sure that 64 bit is Enabled. You will also see a setting for Virtualization. Set this to Enabled as well. Save your changes. Boot server normally and try installing your 64 bit Operating system (in my case Windows 2008). Installation runs normally now.

Reply
0 Kudos
wancheta
Contributor
Contributor
Jump to solution

Thanks awhite11. That did the trick for my 2950.

Reply
0 Kudos
CMCC
Enthusiast
Enthusiast
Jump to solution

I have a server with Dual-Core Intel Xeon 5160 CPU, Intel documents say that this CPU has VT and EM64T capabilities, and I already enabled VT but I still get "The CPU of the host is incompatible with the CPU feature requirements of virtual machine; CPUID level 0x800000001 register 'edx' " error.

There's no vmx or EM64T feature to enable in the BIOS, just VT, that's already enabled.

Any suggestions?

Celia.-
Reply
0 Kudos
alex2008
Contributor
Contributor
Jump to solution

I am experiencing a similar issue with Intel's S5000PAL 1U server. It has two Quad Cores Intel Xeon E5320 CPUs that have Intel VT & EM64T capabilities. VT enabled in BIOS and the cpuidtool on the VMWare also suggest that 64-bit Guest OSes are supported.

I'm working with VMWare ESX Server 3.5 Update 1 installation. I wonder if the 32-bit kernel on the VMWare host installation would be the root cause of this issue.

I have tried installing Ubuntu 64-bit, Gentoo 64-bit, Redhat 64-bit installation CDs to install Guest OSes. Whenever I try to boot any of those installation CDs, it complains that my CPU is only 32-bit ("Your CPU does not support long mode. Use a 32bit distribution."). Smiley Sad

I wonder if I missed anything that I'm suppose to enable/activate during VMWare ESX Server installation to get 64-bit guest OS support. I don't remember seeing any options during the installation regarding 32-bit/64-bit guest OSes.

I'm running out of ideas here on trying to get 64-bit guest OS on ESX 3.5.

Reply
0 Kudos
Dave_Mishchenko
Immortal
Immortal
Jump to solution

Can you attach the VMX file for the VM you're trying to install in?

Reply
0 Kudos
Rumple
Virtuoso
Virtuoso
Jump to solution

Did you shutdown and start back up after enabling VT in the BIOS.

ESX Service Console being 32bit has nothing to do with the 64Bit support. The vmkernel is what passes through the capabilities of the hardware to the VM's.

Typically not restarting or doing a powerdown/powerup after enabling VT is what causes the issue with not being able to run 64bit guests.

Edit..not making sure you have selected the 64bit version when selecting the operating system for the VM can cause that as well...

Reply
0 Kudos
CMCC
Enthusiast
Enthusiast
Jump to solution

Hi,

What Rumple says it's correct, this document helped me to realize that just simply rebooting the server it wouldn't work! I must set the VT enabled and shutdown the server, not restart it, then power on again. And it works!! it sounds silly but it works!!

Regards

Celia.-
Reply
0 Kudos
alex2008
Contributor
Contributor
Jump to solution

Depends on what you mean by shutdown. I've rebooted, removed AC power (over at least 40 times while playing with the BIOS options). Please let me know if I'm doing something wrong here. I'm pretty sure I selected the 64bit OS for the VM because the drop down list is pretty obvious unless there are other places I must specify 64-bit. Please do let me know if there are.

I've attached the vmx file for the VM i'm trying to install Gentoo 64-bit OS onto.

I've noticed that on the host machine, when I do cat /proc/cpuinfo, I only see 1 CPU. Not sure if that might cause this weirdness:

============================

processor : 0

vendor_id : GenuineIntel

cpu family : 6

model : 15

model name : Intel(R) Xeon(R) CPU E5320 @ 1.86GHz

stepping : 7

cpu MHz : 1861.966

cache size : 4096 KB

fdiv_bug : no

hlt_bug : no

f00f_bug : no

coma_bug : no

fpu : yes

fpu_exception : yes

cpuid level : 10

wp : yes

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss tm nx lm

bogomips : 3709.33

==============

Thanks for everyone's quick response!

Reply
0 Kudos
CMCC
Enthusiast
Enthusiast
Jump to solution

Hi,

Ok, in the BIOS settings, in Advanced Options, there is Intel Virtualization Technology feature (or VTx or EM64T) and it must be enabled. There's another feature, something like executable bit disable or something like that, I don't remember the exactly name, but you must set enabled too, just in case, it will help you someday with vmotion.

After making these changes, and save your configuration, your server will reboot and use "shutdown -h now", shutdown completely the server, disconnect the power like for 2 minutes, and power on the server again. That's what I did. And it works.

After this, you must be able to create either "Other 64 bit" VM or/and Win 64 bit/linux 64 bit.

Let me know your results after trying this again.

I hope this helps.

Regards.

Celia.-
Reply
0 Kudos