- Timestamp:
- Apr 1, 2021 1:17:16 PM (4 years ago)
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/VMMR0.cpp
r88346 r88347 601 601 } 602 602 603 #if 0 /** @todo temporarily disabled, see oem2 ticket 40 */604 603 605 604 /** … … 645 644 { 646 645 Log12(("vmmR0DoHaltInterrupt: CPU%d failed #3\n", pVCpu->idCpu)); 646 STAM_REL_COUNTER_INC(&pVCpu->vmm.s.StatR0HaltToR3); 647 647 return VINF_EM_HALT; 648 648 } … … 656 656 /** @todo later. */ 657 657 Log12(("vmmR0DoHaltInterrupt: CPU%d failed #2 (uMWait=%u enmInt=%d)\n", pVCpu->idCpu, uMWait, enmInterruptibility)); 658 STAM_REL_COUNTER_INC(&pVCpu->vmm.s.StatR0HaltToR3); 658 659 return VINF_EM_HALT; 659 660 } … … 670 671 * for details. */ 671 672 Log12(("vmmR0DoHaltInterrupt: CPU%d failed #1 (uMWait=%u enmInt=%d)\n", pVCpu->idCpu, uMWait, enmInterruptibility)); 673 STAM_REL_COUNTER_INC(&pVCpu->vmm.s.StatR0HaltToR3); 672 674 return VINF_EM_HALT; 673 675 } … … 688 690 689 691 Log12(("vmmR0DoHaltInterrupt: CPU%d failed #0 (uMWait=%u enmInt=%d)\n", pVCpu->idCpu, uMWait, enmInterruptibility)); 692 STAM_REL_COUNTER_INC(&pVCpu->vmm.s.StatR0HaltToR3); 690 693 return VINF_EM_HALT; 691 694 } … … 814 817 { 815 818 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3FromSpin); 819 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3); 816 820 return VINF_EM_HALT; 817 821 } … … 820 824 { 821 825 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3FromSpin); 826 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3); 822 827 return VINF_EM_HALT; 823 828 } … … 885 890 return vmmR0DoHaltInterrupt(pGVCpu, uMWait, enmInterruptibility); 886 891 } 892 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3PostNoInt); 887 893 Log12(("vmmR0DoHalt: CPU%d post #2 - No pending interrupt\n", pGVCpu->idCpu)); 888 894 } 889 895 else 896 { 897 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3PostPendingFF); 890 898 Log12(("vmmR0DoHalt: CPU%d post #1 - Pending FF\n", pGVCpu->idCpu)); 899 } 891 900 } 892 901 else 902 { 903 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3Other); 893 904 Log12(("vmmR0DoHalt: CPU%d GVMMR0SchedHalt failed: %Rrc\n", pGVCpu->idCpu, rc)); 905 } 894 906 } 895 907 else 896 908 { 897 909 VMCPU_CMPXCHG_STATE(pGVCpu, VMCPUSTATE_STARTED, VMCPUSTATE_STARTED_HALTED); 898 Log12(("vmmR0DoHalt: CPU%d failed #4 - Pending FF\n", pGVCpu->idCpu)); 910 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3PendingFF); 911 Log12(("vmmR0DoHalt: CPU%d failed #5 - Pending FF\n", pGVCpu->idCpu)); 899 912 } 900 913 } 901 914 else 902 Log12(("vmmR0DoHalt: CPU%d failed #3 - enmState=%d\n", pGVCpu->idCpu, VMCPU_GET_STATE(pGVCpu))); 915 { 916 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3Other); 917 Log12(("vmmR0DoHalt: CPU%d failed #4 - enmState=%d\n", pGVCpu->idCpu, VMCPU_GET_STATE(pGVCpu))); 918 } 903 919 } 904 920 else 905 Log12(("vmmR0DoHalt: CPU%d failed #2 - Pending FF\n", pGVCpu->idCpu)); 921 { 922 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3SmallDelta); 923 Log12(("vmmR0DoHalt: CPU%d failed #3 - delta too small: %RU64\n", pGVCpu->idCpu, u64Delta)); 924 } 906 925 } 926 else 927 { 928 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3PendingFF); 929 Log12(("vmmR0DoHalt: CPU%d failed #2 - Pending FF\n", pGVCpu->idCpu)); 930 } 907 931 } 908 932 else 933 { 934 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3PendingFF); 909 935 Log12(("vmmR0DoHalt: CPU%d failed #1 - Pending FF\n", pGVCpu->idCpu)); 936 } 910 937 } 911 938 else 939 { 940 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3Other); 912 941 Log12(("vmmR0DoHalt: CPU%d failed #0 - fMayHaltInRing0=%d TRPMHasTrap=%d enmInt=%d uMWait=%u\n", 913 942 pGVCpu->idCpu, pGVCpu->vmm.s.fMayHaltInRing0, TRPMHasTrap(pGVCpu), enmInterruptibility, uMWait)); 914 943 } 944 945 STAM_REL_COUNTER_INC(&pGVCpu->vmm.s.StatR0HaltToR3); 915 946 return VINF_EM_HALT; 916 947 } 917 948 918 #endif919 949 920 950 /** … … 1516 1546 vmmR0RecordRC(pGVM, pGVCpu, rc); 1517 1547 #endif 1518 #if 0 /** @todo temporarily disabled, see oem2 ticket 40 */1519 1548 /* 1520 1549 * If this is a halt. … … 1532 1561 pGVCpu->vmm.s.cR0HaltsToRing3++; 1533 1562 } 1534 #endif1535 1563 } 1536 1564 /* -
trunk/src/VBox/VMM/VMMR3/VMM.cpp
r88346 r88347 540 540 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltExecFromSpin, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltExec/FromSpin", i); 541 541 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltExecFromBlock, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltExec/FromBlock", i); 542 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3FromSpin, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3FromSpin", i); 542 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3", i); 543 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3FromSpin, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/FromSpin", i); 544 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3Other, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/Other", i); 545 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3PendingFF, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/PendingFF", i); 546 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3SmallDelta, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/SmallDelta", i); 547 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3PostNoInt, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/PostWaitNoInt", i); 548 STAMR3RegisterF(pVM, &pVCpu->vmm.s.StatR0HaltToR3PostPendingFF,STAMTYPE_COUNTER,STAMVISIBILITY_ALWAYS,STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltToR3/PostWaitPendingFF", i); 543 549 STAMR3RegisterF(pVM, &pVCpu->vmm.s.cR0Halts, STAMTYPE_U32, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltHistoryCounter", i); 544 550 STAMR3RegisterF(pVM, &pVCpu->vmm.s.cR0HaltsSucceeded, STAMTYPE_U32, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "", "/PROF/CPU%u/VM/Halt/R0HaltHistorySucceeded", i); -
trunk/src/VBox/VMM/include/VMMInternal.h
r87819 r88347 436 436 STAMCOUNTER StatR0HaltExecFromBlock; 437 437 STAMCOUNTER StatR0HaltExecFromSpin; 438 STAMCOUNTER StatR0HaltToR3; 438 439 STAMCOUNTER StatR0HaltToR3FromSpin; 440 STAMCOUNTER StatR0HaltToR3Other; 441 STAMCOUNTER StatR0HaltToR3PendingFF; 442 STAMCOUNTER StatR0HaltToR3SmallDelta; 443 STAMCOUNTER StatR0HaltToR3PostNoInt; 444 STAMCOUNTER StatR0HaltToR3PostPendingFF; 439 445 } VMMCPU; 440 446 AssertCompileMemberAlignment(VMMCPU, TracerCtx, 8);
Note:
See TracChangeset
for help on using the changeset viewer.