Changeset 20180 in vbox
- Timestamp:
- Jun 2, 2009 8:56:20 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/HWACCMAll.cpp
r19916 r20180 226 226 return VINF_SUCCESS; 227 227 228 PVMCPU pVCpu = VMMGetCpu(pVM);229 228 #ifdef IN_RING0 230 229 if (pVM->hwaccm.s.vmx.fSupported) 231 230 { 232 /* @todo for all vcpus */ 233 return VMXR0InvalidatePhysPage(pVM, pVCpu, GCPhys); 231 VMCPUID idThisCpu = VMMGetCpuId(pVM); 232 233 for (unsigned idCpu = 0; idCpu < pVM->cCPUs; idCpu++) 234 { 235 PVMCPU pVCpu = &pVM->aCpus[idCpu]; 236 237 if (idThisCpu == idCpu) 238 { 239 VMXR0InvalidatePhysPage(pVM, pVCpu, GCPhys); 240 continue; 241 } 242 243 VMCPU_FF_SET(pVCpu, VMCPU_FF_TLB_FLUSH); 244 if (VMCPU_GET_STATE(pVCpu) == VMCPUSTATE_STARTED_EXEC) 245 { 246 STAM_COUNTER_INC(&pVCpu->hwaccm.s.StatTlbShootdownFlush); 247 #ifdef IN_RING0 248 RTCPUID idHostCpu = pVCpu->hwaccm.s.idEnteredCpu; 249 if (idHostCpu != NIL_RTCPUID) 250 RTMpPokeCpu(idHostCpu); 251 #else 252 VMR3NotifyCpuFFU(pVCpu->pUVCpu, VMNOTIFYFF_FLAGS_POKE); 253 #endif 254 } 255 else 256 STAM_COUNTER_INC(&pVCpu->hwaccm.s.StatFlushTLBManual); 257 } 258 return VINF_SUCCESS; 234 259 } 235 260
Note:
See TracChangeset
for help on using the changeset viewer.