Changeset 20979 in vbox for trunk/src/VBox/VMM/VMMR0/HWACCMR0.cpp
- Timestamp:
- Jun 26, 2009 2:56:03 PM (16 years ago)
- svn:sync-xref-src-repo-rev:
- 49187
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HWACCMR0.cpp
r20132 r20979 851 851 PVMCPU pVCpu = &pVM->aCpus[i]; 852 852 853 pVCpu->hwaccm.s.idEnteredCpu = NIL_RTCPUID;854 855 853 /* Invalidate the last cpu we were running on. */ 856 854 pVCpu->hwaccm.s.idLastCpu = NIL_RTCPUID; … … 963 961 /* Make sure we can't enter a session after we've disabled hwaccm in preparation of a suspend. */ 964 962 AssertReturn(!ASMAtomicReadBool(&HWACCMR0Globals.fSuspended), VERR_HWACCM_SUSPEND_PENDING); 963 Assert(pVCpu->idHostCpu == NIL_RTCPUID); 964 965 965 ASMAtomicWriteBool(&pCpu->fInUse, true); 966 967 AssertMsg(pVCpu->hwaccm.s.idEnteredCpu == NIL_RTCPUID, ("%d", (int)pVCpu->hwaccm.s.idEnteredCpu)); 968 pVCpu->hwaccm.s.idEnteredCpu = idCpu; 966 ASMAtomicWriteU32(&pVCpu->idHostCpu, idCpu); 969 967 970 968 pCtx = CPUMQueryGuestCtxPtr(pVCpu); … … 1000 998 #endif 1001 999 } 1002 else1003 pVCpu->hwaccm.s.idEnteredCpu = NIL_RTCPUID;1004 1000 return rc; 1005 1001 } … … 1042 1038 /* keep track of the CPU owning the VMCS for debugging scheduling weirdness and ring-3 calls. */ 1043 1039 #ifdef RT_STRICT 1044 if (RT_UNLIKELY( pVCpu-> hwaccm.s.idEnteredCpu != idCpu1040 if (RT_UNLIKELY( pVCpu->idHostCpu != idCpu 1045 1041 && RT_FAILURE(rc))) 1046 1042 { 1047 AssertMsgFailed(("Owner is %d, I'm %d", (int)pVCpu-> hwaccm.s.idEnteredCpu, (int)idCpu));1043 AssertMsgFailed(("Owner is %d, I'm %d", (int)pVCpu->idHostCpu, (int)idCpu)); 1048 1044 rc = VERR_INTERNAL_ERROR; 1049 1045 } 1050 1046 #endif 1051 pVCpu->hwaccm.s.idEnteredCpu = NIL_RTCPUID;1052 1047 1053 1048 ASMAtomicWriteBool(&pCpu->fInUse, false); … … 1200 1195 PVMCPU pVCpu = &pVM->aCpus[idCpu]; 1201 1196 1202 if (pVCpu-> hwaccm.s.idEnteredCpu == idHostCpu)1197 if (pVCpu->idHostCpu == idHostCpu) 1203 1198 return pVCpu; 1204 1199 }
Note:
See TracChangeset
for help on using the changeset viewer.