Changeset 11474 in vbox
- Timestamp:
- Aug 19, 2008 8:11:20 AM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 34951
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/HWACCMInternal.h
r10817 r11474 274 274 /* TLB flush count */ 275 275 uint32_t cTLBFlushes; 276 277 /* Current ASID in use by the VM */ 278 uint32_t uCurrentASID; 276 279 277 280 /** R0 memory object for the VM control block (VMCB). */ -
trunk/src/VBox/VMM/VMMInternal.h
r9387 r11474 88 88 uint32_t u32Alignment; 89 89 #endif 90 /** The ring-0 logger instance. This extends beyon the size.*/90 /** The ring-0 logger instance. This extends beyond the size.*/ 91 91 RTLOGGER Logger; 92 92 } VMMR0LOGGER, *PVMMR0LOGGER; -
trunk/src/VBox/VMM/VMMR0/HWSVMR0.cpp
r10886 r11474 196 196 197 197 /* Invalidate the last cpu we were running on. */ 198 pVM->hwaccm.s.svm.idLastCpu = NIL_RTCPUID; 198 pVM->hwaccm.s.svm.idLastCpu = NIL_RTCPUID; 199 200 /* we'll aways increment this the first time (host uses ASID 0) */ 201 pVM->hwaccm.s.svm.uCurrentASID = 0; 199 202 return VINF_SUCCESS; 200 203 } … … 951 954 STAM_COUNTER_INC(&pVM->hwaccm.s.StatFlushASID); 952 955 953 pVM->hwaccm.s.svm.cTLBFlushes = pCpu->cTLBFlushes; 956 pVM->hwaccm.s.svm.cTLBFlushes = pCpu->cTLBFlushes; 957 pVM->hwaccm.s.svm.uCurrentASID = pCpu->uCurrentASID; 954 958 } 955 959 else … … 959 963 /* We never increase uCurrentASID in the fAlwaysFlushTLB (erratum 170) case. */ 960 964 if (!pCpu->uCurrentASID) 961 p Cpu->uCurrentASID = 1;965 pVM->hwaccm.s.svm.uCurrentASID = pCpu->uCurrentASID = 1; 962 966 963 967 pVMCB->ctrl.TLBCtrl.n.u1TLBFlush = pVM->hwaccm.s.svm.fForceTLBFlush; … … 965 969 AssertMsg(pVM->hwaccm.s.svm.cTLBFlushes == pCpu->cTLBFlushes, ("Flush count mismatch for cpu %d (%x vs %x)\n", pCpu->idCpu, pVM->hwaccm.s.svm.cTLBFlushes, pCpu->cTLBFlushes)); 966 970 AssertMsg(pCpu->uCurrentASID >= 1 && pCpu->uCurrentASID < pVM->hwaccm.s.svm.u32MaxASID, ("cpu%d uCurrentASID = %x\n", pCpu->idCpu, pCpu->uCurrentASID)); 967 pVMCB->ctrl.TLBCtrl.n.u32ASID = pCpu->uCurrentASID; 971 AssertMsg(pVM->hwaccm.s.svm.uCurrentASID >= 1 && pVM->hwaccm.s.svm.uCurrentASID < pVM->hwaccm.s.svm.u32MaxASID, ("cpu%d VM uCurrentASID = %x\n", pCpu->idCpu, pVM->hwaccm.s.svm.uCurrentASID)); 972 pVMCB->ctrl.TLBCtrl.n.u32ASID = pVM->hwaccm.s.svm.uCurrentASID; 968 973 969 974 #ifdef VBOX_WITH_STATISTICS … … 1920 1925 Assert(pVM->hwaccm.s.svm.fSupported); 1921 1926 1922 LogFlow(("SVMR0Enter cpu%d last=%d asid=%d\n", pCpu->idCpu, pVM->hwaccm.s.svm.idLastCpu, p Cpu->uCurrentASID));1927 LogFlow(("SVMR0Enter cpu%d last=%d asid=%d\n", pCpu->idCpu, pVM->hwaccm.s.svm.idLastCpu, pVM->hwaccm.s.svm.uCurrentASID)); 1923 1928 pVM->hwaccm.s.svm.fResumeVM = false; 1924 1929
Note:
See TracChangeset
for help on using the changeset viewer.