KB61: NO DATA EXECUTION PROTECTION

By default, VMware vCenter allows only vMotions between compatible source and destination CPUs. So if you have been trying to move a VM from one host to another, and you got stuck with a error message telling you that the CPU of your destination host is incompatible with the CPU configuration of your Virtual Machine, then this usually means one of the following:

a) you did not mask the NX/XD bit in the settings of the VM or…
b) you did not enable the “No-Execute Memory Protection” on both your source host and destination host or…
c) you did not have your cluster of ESX hosts configured for Enhanced VMotion Compatibility (EVC)
Troubleshooting:
  1. To enable NX or XD in the BIOS:
    • Restart your host.
    • While booting, before Windows starts, press the key to go to BIOS.
    • In the BIOS, go to the Security tab.
    • Look for the NX or XD flag.Note: For Intel processors, you see the XD flag and for AMD processors, you see the NX flag. If that is not enabled, toggle the option and enable it.
    • Save the settings and exit the BIOS settings.
    • Restart your computer.
  2. To enable the “No-Execute Memory Protection”
    • Reboot the server and access the BIOS
    • Select “Advanced Options”
    • Enable “No-Execute Memory Protection” (this is what is called on HP servers)
    • Press “F10″ to save and the server will restart.
  3. To have ESX hosts configured for Enhanced VMotion Compatibility (EVC)
    • Right click your cluster and choose Edit Setting
    • Click on the VMware EVC in the left panel
    • Select the option “Enable EVC for Intel Hosts” or “Enable EVC for AMD Hosts”.
    • Now choose your VMWare EVC mode: you can raise the EVC mode to expose more CPU features, or lower the EVC mode in order to hide CPU features and increase compatibility with older hardware
    • Click Ok

Further informations can be retrieved in  this article.

Posted in: VMware vSphere