Changeset 87543 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Feb 2, 2021 5:00:24 PM (4 years ago)
- svn:sync-xref-src-repo-rev:
- 142569
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/HMAll.cpp
r87542 r87543 683 683 684 684 if ( pVM->hm.s.vmx.fSupported 685 && (pVM->hm.s.vmx.Msrs.ProcCtls.n.allowed1 & VMX_PROC_CTLS_USE_MSR_BITMAPS)) 685 && ( CTX_EXPR(pVM->hm.s.vmx.MsrsForRing3.ProcCtls.n.allowed1, g_HmMsrs.u.vmx.ProcCtls.n.allowed1, RT_NOTHING) 686 & VMX_PROC_CTLS_USE_MSR_BITMAPS)) 686 687 return true; 687 688 } -
trunk/src/VBox/VMM/VMMAll/HMVMXAll.cpp
r87541 r87543 767 767 { 768 768 /* If bit N is set in cr0_fixed0, then it must be set in the guest's cr0. */ 769 uint32_t uCr0Mask = (uint32_t)CTX_EXPR(pVM->hm.s.vmx.Msrs .u64Cr0Fixed0, g_HmMsrs.u.vmx.u64Cr0Fixed0, RT_NOTHING);769 uint32_t uCr0Mask = (uint32_t)CTX_EXPR(pVM->hm.s.vmx.MsrsForRing3.u64Cr0Fixed0, g_HmMsrs.u.vmx.u64Cr0Fixed0, RT_NOTHING); 770 770 771 771 /* We ignore the NE bit here on purpose; see HMR0.cpp for details. */ … … 786 786 787 787 /* If bit N is cleared in cr0_fixed1, then it must be zero in the guest's cr0. */ 788 uCr0Mask = (uint32_t)~CTX_EXPR(pVM->hm.s.vmx.Msrs .u64Cr0Fixed1, g_HmMsrs.u.vmx.u64Cr0Fixed1, RT_NOTHING);788 uCr0Mask = (uint32_t)~CTX_EXPR(pVM->hm.s.vmx.MsrsForRing3.u64Cr0Fixed1, g_HmMsrs.u.vmx.u64Cr0Fixed1, RT_NOTHING); 789 789 if ((pCtx->cr0 & uCr0Mask) != 0) 790 790 return false; 791 791 792 792 /* If bit N is set in cr4_fixed0, then it must be set in the guest's cr4. */ 793 uCr0Mask = (uint32_t)CTX_EXPR(pVM->hm.s.vmx.Msrs .u64Cr4Fixed0, g_HmMsrs.u.vmx.u64Cr4Fixed0, RT_NOTHING);793 uCr0Mask = (uint32_t)CTX_EXPR(pVM->hm.s.vmx.MsrsForRing3.u64Cr4Fixed0, g_HmMsrs.u.vmx.u64Cr4Fixed0, RT_NOTHING); 794 794 uCr0Mask &= ~X86_CR4_VMXE; 795 795 if ((pCtx->cr4 & uCr0Mask) != uCr0Mask) … … 797 797 798 798 /* If bit N is cleared in cr4_fixed1, then it must be zero in the guest's cr4. */ 799 uCr0Mask = (uint32_t)~CTX_EXPR(pVM->hm.s.vmx.Msrs .u64Cr4Fixed1, g_HmMsrs.u.vmx.u64Cr4Fixed1, RT_NOTHING);799 uCr0Mask = (uint32_t)~CTX_EXPR(pVM->hm.s.vmx.MsrsForRing3.u64Cr4Fixed1, g_HmMsrs.u.vmx.u64Cr4Fixed1, RT_NOTHING); 800 800 if ((pCtx->cr4 & uCr0Mask) != 0) 801 801 return false;
Note:
See TracChangeset
for help on using the changeset viewer.