VirtualBox

Changeset 92493 in vbox


Ignore:
Timestamp:
Nov 18, 2021 2:01:56 PM (3 years ago)
Author:
vboxsync
Message:

VMM: Nested VMX: bugref:10092 Purge VINF_PGM_CHANGE_MODE, no longer used.

Location:
trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/err.h

    r92444 r92493  
    512512 * aliased or/and mapped by multiple PTs. */
    513513#define VINF_PGM_GCPHYS_ALIASED             1623
    514 /** Reason for leaving RC: Paging mode changed.
    515  * PGMChangeMode() uses this to force a switch to R3 so it can safely deal with
    516  * a mode switch. */
    517 #define VINF_PGM_CHANGE_MODE                1624
    518514/** SyncPage modified the PDE.
    519515 * This is an internal status code used to communicate back to the \#PF handler
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImplSvmInstr.cpp.h

    r91580 r92493  
    9393     */
    9494    int rc = PGMChangeMode(pVCpu, pVCpu->cpum.GstCtx.cr0 | X86_CR0_PE, pVCpu->cpum.GstCtx.cr4, pVCpu->cpum.GstCtx.msrEFER);
    95 # ifdef IN_RING3
    96     Assert(rc != VINF_PGM_CHANGE_MODE);
    97 # endif
    9895    AssertRCReturn(rc, rc);
    9996
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImplVmxInstr.cpp.h

    r91987 r92493  
    12271227     */
    12281228    int rc = PGMChangeMode(pVCpu, pVCpu->cpum.GstCtx.cr0 | X86_CR0_PE, pVCpu->cpum.GstCtx.cr4, pVCpu->cpum.GstCtx.msrEFER);
    1229 # ifdef IN_RING3
    1230     Assert(rc != VINF_PGM_CHANGE_MODE);
    1231 # endif
    12321229    AssertRCReturn(rc, rc);
    12331230
  • trunk/src/VBox/VMM/VMMAll/PGMAll.cpp

    r92491 r92493  
    27812781 *          VM scheduling.
    27822782 * @retval  VINF_SUCCESS if the was no change, or it was successfully dealt with.
    2783  * @retval  VINF_PGM_CHANGE_MODE if we're in RC the mode changes.  This will
    2784  *          NOT be returned in ring-3 or ring-0.
    27852783 * @retval  VINF_EM_SUSPEND or VINF_EM_OFF on a fatal runtime error. (R3 only)
    27862784 *
  • trunk/src/VBox/VMM/VMMR0/VMMR0.cpp

    r92411 r92493  
    12981298            STAM_COUNTER_INC(&pVM->vmm.s.StatRZRetPATMDuplicateFn);
    12991299            break;
    1300         case VINF_PGM_CHANGE_MODE:
    1301             STAM_COUNTER_INC(&pVM->vmm.s.StatRZRetPGMChangeMode);
    1302             break;
    13031300        case VINF_PGM_POOL_FLUSH_PENDING:
    13041301            STAM_COUNTER_INC(&pVM->vmm.s.StatRZRetPGMFlushPending);
  • trunk/src/VBox/VMM/VMMR3/EM.cpp

    r92119 r92493  
    15041504    {
    15051505        VBOXSTRICTRC rcStrict = IEMExecVmxVmexitExtInt(pVCpu, 0 /* uVector */, true /* fIntPending */);
    1506         AssertMsg(   rcStrict != VINF_PGM_CHANGE_MODE
    1507                   && rcStrict != VINF_VMX_VMEXIT
     1506        AssertMsg(   rcStrict != VINF_VMX_VMEXIT
    15081507                  && rcStrict != VINF_NO_CHANGE, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict)));
    15091508        if (rcStrict != VINF_VMX_INTERCEPT_NOT_ACTIVE)
     
    15341533        if (RT_SUCCESS(rcStrict))
    15351534        {
    1536             AssertMsg(   rcStrict != VINF_PGM_CHANGE_MODE
    1537                       && rcStrict != VINF_SVM_VMEXIT
     1535            AssertMsg(   rcStrict != VINF_SVM_VMEXIT
    15381536                      && rcStrict != VINF_NO_CHANGE, ("%Rrc\n", VBOXSTRICTRC_VAL(rcStrict)));
    15391537            return VBOXSTRICTRC_VAL(rcStrict);
     
    15661564        if (RT_SUCCESS(rcStrict))
    15671565        {
    1568             Assert(rcStrict != VINF_PGM_CHANGE_MODE);
    15691566            Assert(rcStrict != VINF_SVM_VMEXIT);
    15701567            return VBOXSTRICTRC_VAL(rcStrict);
     
    19451942                    rc2 = VBOXSTRICTRC_VAL(IEMExecVmxVmexit(pVCpu, VMX_EXIT_NMI_WINDOW, 0 /* uExitQual */));
    19461943                    AssertMsg(   rc2 != VINF_VMX_INTERCEPT_NOT_ACTIVE
    1947                               && rc2 != VINF_PGM_CHANGE_MODE
    19481944                              && rc2 != VINF_VMX_VMEXIT
    19491945                              && rc2 != VINF_NO_CHANGE, ("%Rrc\n", rc2));
     
    19731969                    {
    19741970                        rc2 = VBOXSTRICTRC_VAL(IEMExecSvmVmexit(pVCpu, SVM_EXIT_NMI, 0 /* uExitInfo1 */,  0 /* uExitInfo2 */));
    1975                         AssertMsg(   rc2 != VINF_PGM_CHANGE_MODE
    1976                                   && rc2 != VINF_SVM_VMEXIT
     1971                        AssertMsg(   rc2 != VINF_SVM_VMEXIT
    19771972                                  && rc2 != VINF_NO_CHANGE, ("%Rrc\n", rc2));
    19781973                        UPDATE_RC();
     
    20102005                    rc2 = VBOXSTRICTRC_VAL(IEMExecVmxVmexit(pVCpu, VMX_EXIT_INT_WINDOW, 0 /* uExitQual */));
    20112006                    AssertMsg(   rc2 != VINF_VMX_INTERCEPT_NOT_ACTIVE
    2012                               && rc2 != VINF_PGM_CHANGE_MODE
    20132007                              && rc2 != VINF_VMX_VMEXIT
    20142008                              && rc2 != VINF_NO_CHANGE, ("%Rrc\n", rc2));
  • trunk/src/VBox/VMM/VMMR3/VMM.cpp

    r92408 r92493  
    373373    STAM_REG(pVM, &pVM->vmm.s.StatRZRetInterruptPending,    STAMTYPE_COUNTER, "/VMM/RZRet/InterruptPending",    STAMUNIT_OCCURENCES, "Number of VINF_EM_RAW_INTERRUPT_PENDING returns.");
    374374    STAM_REG(pVM, &pVM->vmm.s.StatRZRetPATMDuplicateFn,     STAMTYPE_COUNTER, "/VMM/RZRet/PATMDuplicateFn",     STAMUNIT_OCCURENCES, "Number of VINF_PATM_DUPLICATE_FUNCTION returns.");
    375     STAM_REG(pVM, &pVM->vmm.s.StatRZRetPGMChangeMode,       STAMTYPE_COUNTER, "/VMM/RZRet/PGMChangeMode",       STAMUNIT_OCCURENCES, "Number of VINF_PGM_CHANGE_MODE returns.");
    376375    STAM_REG(pVM, &pVM->vmm.s.StatRZRetPGMFlushPending,     STAMTYPE_COUNTER, "/VMM/RZRet/PGMFlushPending",     STAMUNIT_OCCURENCES, "Number of VINF_PGM_POOL_FLUSH_PENDING returns.");
    377376    STAM_REG(pVM, &pVM->vmm.s.StatRZRetPendingRequest,      STAMTYPE_COUNTER, "/VMM/RZRet/PendingRequest",      STAMUNIT_OCCURENCES, "Number of VINF_EM_PENDING_REQUEST returns.");
  • trunk/src/VBox/VMM/include/EMHandleRCTmpl.h

    r89993 r92493  
    9191        case VINF_PGM_POOL_FLUSH_PENDING:
    9292            rc = VINF_SUCCESS;
    93             break;
    94 
    95         /*
    96          * Paging mode change.
    97          */
    98         case VINF_PGM_CHANGE_MODE:
    99             CPUM_ASSERT_NOT_EXTRN(pVCpu, CPUMCTX_EXTRN_CR0 | CPUMCTX_EXTRN_CR3 | CPUMCTX_EXTRN_CR4 | CPUMCTX_EXTRN_EFER);
    100             rc = PGMChangeMode(pVCpu, pVCpu->cpum.GstCtx.cr0, pVCpu->cpum.GstCtx.cr4, pVCpu->cpum.GstCtx.msrEFER);
    101             if (rc == VINF_SUCCESS)
    102                 rc = VINF_EM_RESCHEDULE;
    103             AssertMsg(RT_FAILURE(rc) || (rc >= VINF_EM_FIRST && rc <= VINF_EM_LAST), ("%Rrc\n", rc));
    10493            break;
    10594#endif /* !EMHANDLERC_WITH_NEM */
  • trunk/src/VBox/VMM/include/VMMInternal.h

    r92408 r92493  
    396396    STAMCOUNTER                 StatRZRetInterruptPending;
    397397    STAMCOUNTER                 StatRZRetPATMDuplicateFn;
    398     STAMCOUNTER                 StatRZRetPGMChangeMode;
    399398    STAMCOUNTER                 StatRZRetPendingRequest;
    400399    STAMCOUNTER                 StatRZRetPGMFlushPending;
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette