Changeset 2773 in vbox for trunk/src/VBox/VMM/VMMR0
- Timestamp:
- May 22, 2007 3:16:10 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
r2762 r2773 75 75 76 76 /* Enter VMX Root Mode */ 77 Log(("pVMXONPhys = %VHp\n", pVM->hwaccm.s.vmx.pVMXONPhys)); 77 78 rc = VMXEnable(pVM->hwaccm.s.vmx.pVMXONPhys); 78 79 if (VBOX_FAILURE(rc)) … … 82 83 83 84 /* Clear VM Control Structure. */ 85 Log(("pVMCSPhys = %VHp\n", pVM->hwaccm.s.vmx.pVMCSPhys)); 84 86 rc = VMXClearVMCS(pVM->hwaccm.s.vmx.pVMCSPhys); 85 87 if (VBOX_FAILURE(rc)) … … 194 196 195 197 rc = VMXWriteVMCS(VMX_VMCS_CTRL_IO_BITMAP_A_FULL, 0); 198 #if HC_ARCH_BITS == 32 196 199 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_IO_BITMAP_A_HIGH, 0); 200 #endif 197 201 AssertRC(rc); 198 202 199 203 rc = VMXWriteVMCS(VMX_VMCS_CTRL_IO_BITMAP_B_FULL, 0); 204 #if HC_ARCH_BITS == 32 200 205 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_IO_BITMAP_B_HIGH, 0); 206 #endif 201 207 AssertRC(rc); 202 208 … … 210 216 } 211 217 rc = VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_STORE_FULL, 0); 218 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_LOAD_FULL, 0); 219 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMENTRY_MSR_LOAD_FULL, 0); 220 #if HC_ARCH_BITS == 32 212 221 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_STORE_HIGH, 0); 213 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_LOAD_FULL, 0);214 222 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_LOAD_HIGH, 0); 215 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VME NTRY_MSR_LOAD_FULL, 0);216 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMENTRY_MSR_LOAD_HIGH, 0); 223 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VMEXIT_MSR_LOAD_HIGH, 0); 224 #endif 217 225 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_EXIT_MSR_STORE_COUNT, 0); 218 226 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_EXIT_MSR_LOAD_COUNT, 0); … … 224 232 rc = VMXWriteVMCS(VMX_VMCS_CTRL_TPR_TRESHOLD, 0); 225 233 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VAPIC_PAGEADDR_FULL, 0); 234 #if HC_ARCH_BITS == 32 226 235 rc |= VMXWriteVMCS(VMX_VMCS_CTRL_VAPIC_PAGEADDR_HIGH, 0); 236 #endif 227 237 AssertRC(rc); 228 238 } 229 239 230 240 /* Set link pointer to -1. Not currently used. */ 241 #if HC_ARCH_BITS == 32 231 242 rc = VMXWriteVMCS(VMX_VMCS_GUEST_LINK_PTR_FULL, 0xFFFFFFFF); 232 243 rc |= VMXWriteVMCS(VMX_VMCS_GUEST_LINK_PTR_HIGH, 0xFFFFFFFF); 244 #else 245 rc = VMXWriteVMCS(VMX_VMCS_GUEST_LINK_PTR_FULL, 0xFFFFFFFFFFFFFFFF); 246 #endif 233 247 AssertRC(rc); 234 248 … … 1094 1108 VMXReadVMCS(VMX_VMCS_HOST_RIP, &val); 1095 1109 Log(("VMX_VMCS_HOST_RIP %VHv\n", val)); 1110 1111 #if HC_ARCH_BITS == 64 1112 Log(("MSR_K6_EFER = %VX64\n", ASMRdMsr(MSR_K6_EFER))); 1113 Log(("MSR_K6_STAR = %VX64\n", ASMRdMsr(MSR_K6_STAR))); 1114 Log(("MSR_K8_LSTAR = %VX64\n", ASMRdMsr(MSR_K8_LSTAR))); 1115 Log(("MSR_K8_CSTAR = %VX64\n", ASMRdMsr(MSR_K8_CSTAR))); 1116 Log(("MSR_K8_SF_MASK = %VX64\n", ASMRdMsr(MSR_K8_SF_MASK))); 1117 #endif 1096 1118 } 1097 1119 #endif /* VBOX_STRICT */
Note:
See TracChangeset
for help on using the changeset viewer.