Index: /trunk/include/VBox/err.h
===================================================================
--- /trunk/include/VBox/err.h	(revision 43745)
+++ /trunk/include/VBox/err.h	(revision 43746)
@@ -1906,4 +1906,12 @@
 /** AMD-V CPU extension in-use. */
 #define VERR_SVM_IN_USE                             (-4054)
+/** Invalid pVMCB. */
+#define VERR_SVM_INVALID_PVMCB                      (-4055)
+/** Unexpected SVM exit. */
+#define VERR_SVM_UNEXPECTED_EXIT                    (-4056)
+/** Unexpected SVM exception exit. */
+#define VERR_SVM_UNEXPECTED_XCPT_EXIT               (-4057)
+/** Unexpected SVM patch type. */
+#define VERR_SVM_UNEXPECTED_PATCH_TYPE              (-4058)
 /** @} */
 
@@ -1913,11 +1921,11 @@
  */
 /** Unable to start VM execution. */
-#define VERR_HM_UNKNOWN_CPU                     (-4100)
+#define VERR_HM_UNKNOWN_CPU                         (-4100)
 /** No CPUID support. */
-#define VERR_HM_NO_CPUID                        (-4101)
+#define VERR_HM_NO_CPUID                            (-4101)
 /** Host is about to go into suspend mode. */
-#define VERR_HM_SUSPEND_PENDING                 (-4102)
+#define VERR_HM_SUSPEND_PENDING                     (-4102)
 /** Conflicting CFGM values. */
-#define VERR_HM_CONFIG_MISMATCH                 (-4103)
+#define VERR_HM_CONFIG_MISMATCH                     (-4103)
 /** Internal processing error in the HM init code. */
 #define VERR_HM_ALREADY_ENABLED_IPE                 (-4104)
@@ -1926,22 +1934,16 @@
 /** No 32-bit to 64-bit switcher in place. */
 #define VERR_HM_NO_32_TO_64_SWITCHER                (-4106)
-/** Invalid pVMCB. */
-#define VERR_HMSVM_INVALID_PVMCB                    (-4107)
-/** Unexpected SVM exit. */
-#define VERR_HMSVM_UNEXPECTED_EXIT                  (-4108)
-/** Unexpected SVM exception exit. */
-#define VERR_HMSVM_UNEXPECTED_XCPT_EXIT             (-4109)
-/** Unexpected SVM patch type. */
-#define VERR_HMSVM_UNEXPECTED_PATCH_TYPE            (-4110)
 /** HMR0Leave was called on the wrong CPU. */
-#define VERR_HM_WRONG_CPU_1                         (-4111)
+#define VERR_HM_WRONG_CPU_1                         (-4107)
 /** Internal processing error \#1 in the HM code.  */
-#define VERR_HM_IPE_1                               (-4112)
+#define VERR_HM_IPE_1                               (-4108)
 /** Internal processing error \#2 in the HM code.  */
-#define VERR_HM_IPE_2                               (-4113)
+#define VERR_HM_IPE_2                               (-4109)
 /** Wrong 32/64-bit switcher. */
-#define VERR_HM_WRONG_SWITCHER                      (-4114)
+#define VERR_HM_WRONG_SWITCHER                      (-4110)
 /** Unknown I/O instruction. */
-#define VERR_HM_UNKNOWN_IO_INSTRUCTION              (-4115)
+#define VERR_HM_UNKNOWN_IO_INSTRUCTION              (-4111)
+/** Unsupported CPU feature combination. */
+#define VERR_HM_UNSUPPORTED_CPU_FEATURE_COMBO       (-4112)
 /** @} */
 
Index: /trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp	(revision 43745)
+++ /trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp	(revision 43746)
@@ -338,5 +338,5 @@
         SVM_VMCB *pvVMCB = (SVM_VMCB *)pVM->aCpus[i].hm.s.svm.pvVMCB;
 
-        AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_HMSVM_INVALID_PVMCB);
+        AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_SVM_INVALID_PVMCB);
 
         /*
@@ -755,5 +755,5 @@
 
     pvVMCB = (SVM_VMCB *)pVCpu->hm.s.svm.pvVMCB;
-    AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_HMSVM_INVALID_PVMCB);
+    AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_SVM_INVALID_PVMCB);
 
     /* Guest CPU context: ES, CS, SS, DS, FS, GS. */
@@ -1223,5 +1223,5 @@
 
     pvVMCB = (SVM_VMCB *)pVCpu->hm.s.svm.pvVMCB;
-    AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_HMSVM_INVALID_PVMCB);
+    AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_SVM_INVALID_PVMCB);
 
     /*
@@ -2090,5 +2090,5 @@
         default:
             AssertMsgFailed(("Unexpected vm-exit caused by exception %x\n", vector));
-            rc = VERR_HMSVM_UNEXPECTED_XCPT_EXIT;
+            rc = VERR_SVM_UNEXPECTED_XCPT_EXIT;
             break;
 
@@ -2759,5 +2759,5 @@
     default:
         /* Unexpected exit codes. */
-        rc = VERR_HMSVM_UNEXPECTED_EXIT;
+        rc = VERR_SVM_UNEXPECTED_EXIT;
         AssertMsgFailed(("Unexpected exit code %x\n", exitCode));                 /* Can't happen. */
         break;
@@ -2877,5 +2877,5 @@
 
             default:
-                    AssertMsgFailedReturn(("Unexpected type %d\n", pPatch->enmType), VERR_HMSVM_UNEXPECTED_PATCH_TYPE);
+                    AssertMsgFailedReturn(("Unexpected type %d\n", pPatch->enmType), VERR_SVM_UNEXPECTED_PATCH_TYPE);
         }
     }
@@ -3044,5 +3044,5 @@
 
         pvVMCB = (SVM_VMCB *)pVCpu->hm.s.svm.pvVMCB;
-        AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_HMSVM_INVALID_PVMCB);
+        AssertMsgReturn(pvVMCB, ("Invalid pvVMCB\n"), VERR_SVM_INVALID_PVMCB);
 
 #if HC_ARCH_BITS == 32
Index: /trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp	(revision 43745)
+++ /trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp	(revision 43746)
@@ -2241,5 +2241,5 @@
     }
 
-    pVCpu->hm.s.vmx.cCachedMsrs = idxMsr;
+    pVCpu->hm.s.vmx.cGuestMsrs = idxMsr;
 
     rc = VMXWriteVMCS(VMX_VMCS32_CTRL_ENTRY_MSR_LOAD_COUNT, idxMsr);
@@ -2440,5 +2440,5 @@
      * Save the possibly changed MSRs that we automatically restore and save during a world switch.
      */
-    for (unsigned i = 0; i < pVCpu->hm.s.vmx.cCachedMsrs; i++)
+    for (unsigned i = 0; i < pVCpu->hm.s.vmx.cGuestMsrs; i++)
     {
         PVMXMSR pMsr = (PVMXMSR)pVCpu->hm.s.vmx.pvGuestMsr;
Index: /trunk/src/VBox/VMM/VMMR3/HM.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR3/HM.cpp	(revision 43745)
+++ /trunk/src/VBox/VMM/VMMR3/HM.cpp	(revision 43746)
@@ -2715,5 +2715,5 @@
                     LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d GuestMSRPhys  %RHp\n", i, pVM->aCpus[i].hm.s.vmx.HCPhysGuestMsr));
                     LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d HostMsrPhys   %RHp\n", i, pVM->aCpus[i].hm.s.vmx.HCPhysHostMsr));
-                    LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d Cached MSRs   %x\n",   i, pVM->aCpus[i].hm.s.vmx.cCachedMsrs));
+                    LogRel(("VERR_VMX_UNABLE_TO_START_VM: Cpu%d cGuestMSRs    %x\n",   i, pVM->aCpus[i].hm.s.vmx.cGuestMsrs));
 #endif
                 }
