VirtualBox

Changeset 61023 in vbox for trunk/src/VBox/VMM/VMMR3/EM.cpp


Ignore:
Timestamp:
May 18, 2016 7:20:26 AM (9 years ago)
Author:
vboxsync
Message:

emR3RemExecute: Check if we can use VT-x mode every so often when REM is disabled or we'll stay executing in turtle mode for ever.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/EM.cpp

    r60907 r61023  
    10921092#ifdef VBOX_WITH_REM
    10931093    bool    fInREMState = false;
     1094#else
     1095    uint32_t cLoops     = 0;
    10941096#endif
    10951097    int     rc          = VINF_SUCCESS;
     
    12221224            }
    12231225        }
     1226
     1227#ifndef VBOX_WITH_REM
     1228        /*
     1229         * Have to check if we can get back to fast execution mode every so often.
     1230         */
     1231        if (!(++cLoops & 7))
     1232        {
     1233            EMSTATE enmCheck = emR3Reschedule(pVM, pVCpu, pCtx);
     1234            if (   enmCheck != EMSTATE_REM
     1235                && enmCheck != EMSTATE_IEM_THEN_REM)
     1236                return VINF_EM_RESCHEDULE;
     1237        }
     1238#endif
    12241239
    12251240    } /* The Inner Loop, recompiled execution mode version. */
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