Hey jmattson (or similar brilliant VMware guru):
We have a VM that's failing to resume, despite my current understanding that it should. ESXi build is 2068190 on both hosts.
VM was was started on a Haswell:
2015-03-26T07:02:43.172Z| vmx| I120: FeatureCompat: No EVC masks.
2015-03-26T07:02:43.181Z| vmx| I120: hostCPUID vendor: GenuineIntel
2015-03-26T07:02:43.181Z| vmx| I120: hostCPUID family: 0x6 model: 0x3f stepping: 0x2
2015-03-26T07:02:43.181Z| vmx| I120: hostCPUID codename: Haswell EP/EN/EX
2015-03-26T07:02:43.181Z| vmx| I120: hostCPUID name: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
With these CPUID mask in the VMX (should match exactly what the UI reports as the "Westmere" mask):
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.1.eax = 00000000000000100000011001010001
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.1.ecx = 00000010100110001110001000111111
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.1.edx = 10001111111010111111101111111111
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.80000001.ecx = 00000000000000000000000000000001
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.80000001.edx = 00101000000100000000100000000000
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.d.eax = 00000000000000000000000000000000
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.d.ecx = 00000000000000000000000000000000
2015-03-26T07:02:43.363Z| vmx| I120: DICT cpuid.d.edx = 00000000000000000000000000000000
2015-03-26T07:02:43.363Z| vmx| I120: DICT checkpoint.disableCpuCheck = true
Now.... We then try to resume the VM on a Sandybridge (same CPUID masking in effect):
2015-03-26T08:14:47.044Z| vmx| I120: FeatureCompat: No EVC masks.
2015-03-26T08:14:47.044Z| vmx| I120: hostCPUID vendor: GenuineIntel
2015-03-26T08:14:47.044Z| vmx| I120: hostCPUID family: 0x6 model: 0x2c stepping: 0x2
2015-03-26T08:14:47.044Z| vmx| I120: hostCPUID codename: Westmere EP
2015-03-26T08:14:47.044Z| vmx| I120: hostCPUID name: Intel(R) Xeon(R) CPU X5650 @ 2.67GHz
And if fails to run:
2015-03-26T08:14:47.619Z| vmx| I120: FeatureCompat: No VM masks.
2015-03-26T08:14:47.619Z| vmx| I120: MonPmc: ctrBase 0xc1 selBase 0x186/1 PGC 1/1 SMM 1 drain 1 flush 0
2015-03-26T08:14:47.619Z| vmx| I120+ MonPmc: gen counters num: 4 width 48 write width 32
2015-03-26T08:14:47.619Z| vmx| I120+ MonPmc: fix counters num: 3 width 48
2015-03-26T08:14:47.619Z| vmx| I120+ MonPmc: unavailable counters: 0x600000000
2015-03-26T08:14:47.620Z| vmx| I120: CPT: Restoring checkpoint /vmfs/volumes/21fbd13f-cf16dd67/session-295fb5c4.vmss
2015-03-26T08:14:47.624Z| vmx| I120: DUMPER: Restoring checkpoint version 8.
2015-03-26T08:14:47.635Z| vmx| I120: guestCpuFeatures = 0x2000fd
2015-03-26T08:14:47.635Z| vmx| I120: Msg_Question:
2015-03-26T08:14:47.635Z| vmx| I120: [msg.checkpoint.cpucheck.fail.feature] The features supported by the processors in this machine are different from the features supported by the processors in the machine on which the virtual machine state was saved.
2015-03-26T08:14:47.635Z| vmx| I120: [msg.checkpoint.cpucheck.fail.hard] Resume on a machine with similar processors.
2015-03-26T08:14:47.635Z| vmx| I120: [msg.checkpoint.restore.cpufail] An error occurred while restoring the CPU state from file "/vmfs/volumes/21fbd13f-cf16dd67/session-295fb5c4.vmss".
2015-03-26T08:14:47.635Z| vmx| I120: [msg.checkpoint.resume.softError] Your virtual machine did not resume because of a correctable error. Preserve the suspended state and correct the error, or discard the suspended state.
Based on my understanding (Westmere is a subset of both Sandybridge and Haswell), it should have worked.
Thanks,
Matt