Changeset 99687 in vbox for trunk/src/VBox/VMM
- Timestamp:
- May 9, 2023 4:17:08 AM (21 months ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/VMXAllTemplate.cpp.h
r99665 r99687 4859 4859 * 4860 4860 * @returns Strict VBox status code (i.e. informational status codes too). 4861 * @param pVCpu The cross context virtual CPU structure. 4862 * @param pVmcsInfo The VMCS information structure. 4863 */ 4864 static VBOXSTRICTRC vmxHCEvaluatePendingEvent(PVMCPUCC pVCpu, PVMXVMCSINFO pVmcsInfo) 4865 { 4861 * @param pVCpu The cross context virtual CPU structure. 4862 * @param pVmcsInfo The VMCS information structure. 4863 * @param pfIntrState Where to store the updated VMX guest-interruptibility 4864 * state. 4865 */ 4866 static VBOXSTRICTRC vmxHCEvaluatePendingEvent(PVMCPUCC pVCpu, PVMXVMCSINFO pVmcsInfo, uint32_t *pfIntrState) 4867 { 4868 Assert(pfIntrState); 4866 4869 Assert(!TRPMHasTrap(pVCpu)); 4870 4871 *pfIntrState = vmxHCGetGuestIntrStateWithUpdate(pVCpu); 4867 4872 4868 4873 /* … … 4984 4989 * 4985 4990 * @returns Strict VBox status code (i.e. informational status codes too). 4986 * @param pVCpu The cross context virtual CPU structure. 4987 * @param pVmcsInfo The VMCS information structure. 4991 * @param pVCpu The cross context virtual CPU structure. 4992 * @param pVmcsInfo The VMCS information structure. 4993 * @param pfIntrState Where to store the updated VMX guest-interruptibility 4994 * state. 4988 4995 * 4989 4996 * @remarks The guest must be in VMX non-root mode. 4990 4997 */ 4991 static VBOXSTRICTRC vmxHCEvaluatePendingEventNested(PVMCPUCC pVCpu, PVMXVMCSINFO pVmcsInfo )4998 static VBOXSTRICTRC vmxHCEvaluatePendingEventNested(PVMCPUCC pVCpu, PVMXVMCSINFO pVmcsInfo, uint32_t *pfIntrState) 4992 4999 { 4993 5000 PCCPUMCTX pCtx = &pVCpu->cpum.GstCtx; 4994 5001 5002 Assert(pfIntrState); 4995 5003 Assert(CPUMIsGuestInVmxNonRootMode(pCtx)); 4996 5004 Assert(!TRPMHasTrap(pVCpu)); 5005 5006 *pfIntrState = vmxHCGetGuestIntrStateWithUpdate(pVCpu); 4997 5007 4998 5008 /* -
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r99663 r99687 5923 5923 vmxHCTrpmTrapToPendingEvent(pVCpu); 5924 5924 5925 uint32_t const fIntrState = vmxHCGetGuestIntrStateWithUpdate(pVCpu);5925 uint32_t fIntrState; 5926 5926 #ifdef VBOX_WITH_NESTED_HWVIRT_VMX 5927 5927 if (!pVmxTransient->fIsNestedGuest) 5928 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, pVmxTransient->pVmcsInfo );5928 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, pVmxTransient->pVmcsInfo, &fIntrState); 5929 5929 else 5930 rcStrict = vmxHCEvaluatePendingEventNested(pVCpu, pVmxTransient->pVmcsInfo );5930 rcStrict = vmxHCEvaluatePendingEventNested(pVCpu, pVmxTransient->pVmcsInfo, &fIntrState); 5931 5931 5932 5932 /* … … 5943 5943 } 5944 5944 #else 5945 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, pVmxTransient->pVmcsInfo );5945 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, pVmxTransient->pVmcsInfo, &fIntrState); 5946 5946 Assert(rcStrict == VINF_SUCCESS); 5947 5947 #endif -
trunk/src/VBox/VMM/VMMR3/NEMR3Native-darwin.cpp
r99663 r99687 3738 3738 vmxHCTrpmTrapToPendingEvent(pVCpu); 3739 3739 3740 uint32_t const fIntrState = vmxHCGetGuestIntrStateWithUpdate(pVCpu);3741 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, &pVCpu->nem.s.VmcsInfo );3740 uint32_t fIntrState; 3741 rcStrict = vmxHCEvaluatePendingEvent(pVCpu, &pVCpu->nem.s.VmcsInfo, &fIntrState); 3742 3742 3743 3743 /*
Note:
See TracChangeset
for help on using the changeset viewer.