Changeset 43466 in vbox for trunk/src/VBox/VMM/VMMR0
- Timestamp:
- Sep 28, 2012 2:47:29 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
r43455 r43466 2513 2513 pVCpu->hm.s.uCurrentASID = pCpu->uCurrentASID; 2514 2514 if (pCpu->fFlushASIDBeforeUse) 2515 {2516 2515 hmR0VmxFlushVPID(pVM, pVCpu, pVM->hm.s.vmx.enmFlushVPID, 0 /* GCPtr */); 2517 #ifdef VBOX_WITH_STATISTICS2518 STAM_COUNTER_INC(&pVCpu->hm.s.StatFlushASID);2519 #endif2520 }2521 2516 } 2522 2517 else … … 2526 2521 else 2527 2522 hmR0VmxFlushEPT(pVM, pVCpu, pVM->hm.s.vmx.enmFlushEPT); 2528 2529 #ifdef VBOX_WITH_STATISTICS2530 /*2531 * This is not terribly accurate (i.e. we don't have any StatFlushEPT counter). We currently count these2532 * as ASID flushes too, better than including them under StatFlushTLBWorldSwitch.2533 */2534 STAM_COUNTER_INC(&pVCpu->hm.s.StatFlushASID);2535 #endif2536 2523 } 2537 2524 … … 2698 2685 pCpu->fFlushASIDBeforeUse = true; 2699 2686 } 2700 else2701 STAM_COUNTER_INC(&pVCpu->hm.s.StatFlushASID);2702 2687 2703 2688 pVCpu->hm.s.fForceTLBFlush = false; … … 5011 4996 int rc = VMXR0InvEPT(enmFlush, &descriptor[0]); 5012 4997 AssertMsg(rc == VINF_SUCCESS, ("VMXR0InvEPT %x %RGv failed with %d\n", enmFlush, pVCpu->hm.s.vmx.GCPhysEPTP, rc)); 4998 #ifdef VBOX_WITH_STATISTICS 4999 STAM_COUNTER_INC(&pVCpu->hm.s.StatFlushNP); 5000 #endif 5013 5001 } 5014 5002 … … 5046 5034 AssertMsg(rc == VINF_SUCCESS, 5047 5035 ("VMXR0InvVPID %x %x %RGv failed with %d\n", enmFlush, pVCpu ? pVCpu->hm.s.uCurrentASID : 0, GCPtr, rc)); 5036 #ifdef VBOX_WITH_STATISTICS 5037 if (pVCpu) 5038 STAM_COUNTER_INC(&pVCpu->hm.s.StatFlushASID); 5039 #endif 5048 5040 } 5049 5041
Note:
See TracChangeset
for help on using the changeset viewer.