- Timestamp:
- Feb 13, 2015 12:25:55 PM (10 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r54102 r54196 2644 2644 Assert(!TRPMHasTrap(pVCpu)); 2645 2645 Assert(!VMMRZCallRing3IsEnabled(pVCpu)); 2646 Log4Func(("\n"));2647 2646 2648 2647 bool const fIntShadow = RT_BOOL(hmR0SvmGetGuestIntrShadow(pVCpu, pCtx)); … … 3296 3295 if (cLoops > pVM->hm.s.cMaxResumeLoops) 3297 3296 { 3298 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitMaxResume);3297 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchMaxResumeLoops); 3299 3298 rc = VINF_EM_RAW_INTERRUPT; 3300 3299 break; … … 3374 3373 if (cLoops > pVM->hm.s.cMaxResumeLoops) 3375 3374 { 3376 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitMaxResume);3375 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchMaxResumeLoops); 3377 3376 rc = VINF_EM_RAW_INTERRUPT; 3378 3377 break; … … 4343 4342 { 4344 4343 HMSVM_VALIDATE_EXIT_HANDLER_PARAMS(); 4344 4345 4345 hmR0SvmUpdateRip(pVCpu, pCtx, 1); 4346 4346 int rc = EMShouldContinueAfterHalt(pVCpu, pCtx) ? VINF_SUCCESS : VINF_EM_HALT; … … 4348 4348 STAM_COUNTER_INC(&pVCpu->hm.s.StatExitHlt); 4349 4349 if (rc != VINF_SUCCESS) 4350 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitHltToR3);4350 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchHltToR3); 4351 4351 return rc; 4352 4352 } -
trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
r54152 r54196 8867 8867 if (cLoops > pVM->hm.s.cMaxResumeLoops) 8868 8868 { 8869 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitMaxResume);8869 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchMaxResumeLoops); 8870 8870 rc = VINF_EM_RAW_INTERRUPT; 8871 8871 break; … … 8947 8947 if (cLoops > pVM->hm.s.cMaxResumeLoops) 8948 8948 { 8949 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitMaxResume);8949 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchMaxResumeLoops); 8950 8950 rcStrict = VINF_EM_RAW_INTERRUPT; 8951 8951 break; … … 10465 10465 STAM_COUNTER_INC(&pVCpu->hm.s.StatExitHlt); 10466 10466 if (rc != VINF_SUCCESS) 10467 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitHltToR3);10467 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchHltToR3); 10468 10468 return rc; 10469 10469 } … … 11364 11364 STAM_COUNTER_INC(&pVCpu->hm.s.StatExitApicAccess); 11365 11365 if (rc != VINF_SUCCESS) 11366 STAM_COUNTER_INC(&pVCpu->hm.s.Stat ExitApicAccessToR3);11366 STAM_COUNTER_INC(&pVCpu->hm.s.StatSwitchApicAccessToR3); 11367 11367 return rc; 11368 11368 } -
trunk/src/VBox/VMM/VMMR3/HM.cpp
r54154 r54196 682 682 HM_REG_COUNTER(&pVCpu->hm.s.StatExitInt, "/HM/CPU%d/Exit/Instr/Int", "Guest attempted to execute INT."); 683 683 HM_REG_COUNTER(&pVCpu->hm.s.StatExitHlt, "/HM/CPU%d/Exit/Instr/Hlt", "Guest attempted to execute HLT."); 684 HM_REG_COUNTER(&pVCpu->hm.s.StatExitHltToR3, "/HM/CPU%d/Exit/HltToR3", "HLT causing us to go to ring-3.");685 684 HM_REG_COUNTER(&pVCpu->hm.s.StatExitXdtrAccess, "/HM/CPU%d/Exit/Instr/XdtrAccess", "Guest attempted to access descriptor table register (GDTR, IDTR, LDTR)."); 686 685 HM_REG_COUNTER(&pVCpu->hm.s.StatExitIOWrite, "/HM/CPU%d/Exit/IO/Write", "I/O write."); … … 689 688 HM_REG_COUNTER(&pVCpu->hm.s.StatExitIOStringRead, "/HM/CPU%d/Exit/IO/ReadString", "String I/O read."); 690 689 HM_REG_COUNTER(&pVCpu->hm.s.StatExitIntWindow, "/HM/CPU%d/Exit/IntWindow", "Interrupt-window exit. Guest is ready to receive interrupts again."); 691 HM_REG_COUNTER(&pVCpu->hm.s.StatExitMaxResume, "/HM/CPU%d/Exit/MaxResume", "Maximum VMRESUME inner-loop counter reached.");692 690 HM_REG_COUNTER(&pVCpu->hm.s.StatExitExtInt, "/HM/CPU%d/Exit/ExtInt", "Host interrupt received."); 693 691 #endif … … 699 697 HM_REG_COUNTER(&pVCpu->hm.s.StatExitMtf, "/HM/CPU%d/Exit/MonitorTrapFlag", "Monitor Trap Flag."); 700 698 HM_REG_COUNTER(&pVCpu->hm.s.StatExitApicAccess, "/HM/CPU%d/Exit/ApicAccess", "APIC access. Guest attempted to access memory at a physical address on the APIC-access page."); 701 HM_REG_COUNTER(&pVCpu->hm.s.StatExitApicAccessToR3, "/HM/CPU%d/Exit/ApicAccessToR3", "APIC access causing us to go to ring-3.");702 699 703 700 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchGuestIrq, "/HM/CPU%d/Switch/IrqPending", "PDMGetInterrupt() cleared behind our back!?!."); … … 706 703 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchExitToR3, "/HM/CPU%d/Switch/ExitToR3", "Exit to ring-3 (total)."); 707 704 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchLongJmpToR3, "/HM/CPU%d/Switch/LongJmpToR3", "Longjump to ring-3."); 705 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchMaxResumeLoops, "/HM/CPU%d/Switch/MaxResumeToR3", "Maximum VMRESUME inner-loop counter reached."); 706 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchHltToR3, "/HM/CPU%d/Switch/HltToR3", "HLT causing us to go to ring-3."); 707 HM_REG_COUNTER(&pVCpu->hm.s.StatSwitchApicAccessToR3, "/HM/CPU%d/Switch/ApicAccessToR3", "APIC access causing us to go to ring-3."); 708 708 709 709 HM_REG_COUNTER(&pVCpu->hm.s.StatInjectInterrupt, "/HM/CPU%d/EventInject/Interrupt", "Injected an external interrupt into the guest."); … … 1358 1358 if (HMAmdIsSubjectToErratum170(&u32Family, &u32Model, &u32Stepping)) 1359 1359 LogRel(("HM: AMD Cpu with erratum 170 family %#x model %#x stepping %#x\n", u32Family, u32Model, u32Stepping)); 1360 LogRel(("HM: Max resume loops = %u\n", pVM->hm.s.cMaxResumeLoops)); 1360 1361 LogRel(("HM: CPUID 0x80000001.u32AMDFeatureECX = %#RX32\n", pVM->hm.s.cpuid.u32AMDFeatureECX)); 1361 1362 LogRel(("HM: CPUID 0x80000001.u32AMDFeatureEDX = %#RX32\n", pVM->hm.s.cpuid.u32AMDFeatureEDX)); … … 1402 1403 if (pVM->hm.s.svm.u32Features & AMD_CPUID_SVM_FEATURE_EDX_NESTED_PAGING) 1403 1404 pVM->hm.s.fNestedPaging = pVM->hm.s.fAllowNestedPaging; 1404 1405 LogRel(("HM: Max resume loops = %u\n", pVM->hm.s.cMaxResumeLoops));1406 1405 1407 1406 /* -
trunk/src/VBox/VMM/include/HMInternal.h
r54065 r54196 896 896 STAMCOUNTER StatExitXdtrAccess; 897 897 STAMCOUNTER StatExitHlt; 898 STAMCOUNTER StatExitHltToR3;899 898 STAMCOUNTER StatExitMwait; 900 899 STAMCOUNTER StatExitMonitor; … … 905 904 STAMCOUNTER StatExitIOStringRead; 906 905 STAMCOUNTER StatExitIntWindow; 907 STAMCOUNTER StatExitMaxResume;908 906 STAMCOUNTER StatExitExtInt; 909 907 STAMCOUNTER StatExitHostNmiInGC; … … 913 911 STAMCOUNTER StatExitMtf; 914 912 STAMCOUNTER StatExitApicAccess; 915 STAMCOUNTER StatExitApicAccessToR3;916 913 STAMCOUNTER StatPendingHostIrq; 917 914 … … 938 935 STAMCOUNTER StatSwitchExitToR3; 939 936 STAMCOUNTER StatSwitchLongJmpToR3; 937 STAMCOUNTER StatSwitchMaxResumeLoops; 938 STAMCOUNTER StatSwitchHltToR3; 939 STAMCOUNTER StatSwitchApicAccessToR3; 940 940 941 941 STAMCOUNTER StatTscParavirt;
Note:
See TracChangeset
for help on using the changeset viewer.