VirtualBox

Changeset 20875 in vbox


Ignore:
Timestamp:
Jun 24, 2009 2:29:17 AM (15 years ago)
Author:
vboxsync
Message:

VMM: Renamed almost all references to CallHost to CallRing3.

Location:
trunk/src/VBox/VMM
Files:
10 edited

Legend:

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

    r20874 r20875  
    112112static DECLCALLBACK(int)    vmmR3Load(PVM pVM, PSSMHANDLE pSSM, uint32_t u32Version);
    113113static DECLCALLBACK(void)   vmmR3YieldEMT(PVM pVM, PTMTIMER pTimer, void *pvUser);
    114 static int                  vmmR3ServiceCallHostRequest(PVM pVM, PVMCPU pVCpu);
     114static int                  vmmR3ServiceCallRing3Request(PVM pVM, PVMCPU pVCpu);
    115115static DECLCALLBACK(void)   vmmR3InfoFF(PVM pVM, PCDBGFINFOHLP pHlp, const char *pszArgs);
    116116
     
    259259            /* MMHyperR3ToR0 returns R3 when not doing hardware assisted virtualization. */
    260260            if (!VMMIsHwVirtExtForced(pVM))
    261                 pVCpu->vmm.s.CallHostR0JmpBuf.pvSavedStack = NIL_RTR0PTR;
     261                pVCpu->vmm.s.CallRing3JmpBufR0.pvSavedStack = NIL_RTR0PTR;
    262262            else
    263263#endif
    264                 pVCpu->vmm.s.CallHostR0JmpBuf.pvSavedStack = MMHyperR3ToR0(pVM, pVCpu->vmm.s.pbEMTStackR3);
     264                pVCpu->vmm.s.CallRing3JmpBufR0.pvSavedStack = MMHyperR3ToR0(pVM, pVCpu->vmm.s.pbEMTStackR3);
    265265            pVCpu->vmm.s.pbEMTStackRC       = MMHyperR3ToRC(pVM, pVCpu->vmm.s.pbEMTStackR3);
    266266            pVCpu->vmm.s.pbEMTStackBottomRC = pVCpu->vmm.s.pbEMTStackRC + VMM_STACK_SIZE;
     
    385385    STAM_REG(pVM, &pVM->vmm.s.StatRZRetPendingRequest,      STAMTYPE_COUNTER, "/VMM/RZRet/PendingRequest",      STAMUNIT_OCCURENCES, "Number of VINF_EM_PENDING_REQUEST returns.");
    386386
    387     STAM_REG(pVM, &pVM->vmm.s.StatRZRetCallHost,            STAMTYPE_COUNTER, "/VMM/RZCallR3/Misc",             STAMUNIT_OCCURENCES, "Number of Other ring-3 calls.");
     387    STAM_REG(pVM, &pVM->vmm.s.StatRZRetCallRing3,           STAMTYPE_COUNTER, "/VMM/RZCallR3/Misc",             STAMUNIT_OCCURENCES, "Number of Other ring-3 calls.");
    388388    STAM_REG(pVM, &pVM->vmm.s.StatRZCallPDMLock,            STAMTYPE_COUNTER, "/VMM/RZCallR3/PDMLock",          STAMUNIT_OCCURENCES, "Number of VMMCALLRING3_PDM_LOCK calls.");
    389389    STAM_REG(pVM, &pVM->vmm.s.StatRZCallPDMQueueFlush,      STAMTYPE_COUNTER, "/VMM/RZCallR3/PDMQueueFlush",    STAMUNIT_OCCURENCES, "Number of VMMCALLRING3_PDM_QUEUE_FLUSH calls.");
     
    400400    for (VMCPUID i = 0; i < pVM->cCPUs; i++)
    401401    {
    402         STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallHostR0JmpBuf.cbUsedMax,  STAMTYPE_U32_RESET, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,      "Max amount of stack used.", "/VMM/Stack/CPU%u/Max", i);
    403         STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallHostR0JmpBuf.cbUsedAvg,  STAMTYPE_U32,       STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,      "Average stack usage.",      "/VMM/Stack/CPU%u/Avg", i);
    404         STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallHostR0JmpBuf.cUsedTotal, STAMTYPE_U64,       STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "Number of stack usages.",   "/VMM/Stack/CPU%u/Uses", i);
     402        STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallRing3JmpBufR0.cbUsedMax,  STAMTYPE_U32_RESET, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,      "Max amount of stack used.", "/VMM/Stack/CPU%u/Max", i);
     403        STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallRing3JmpBufR0.cbUsedAvg,  STAMTYPE_U32,       STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,      "Average stack usage.",      "/VMM/Stack/CPU%u/Avg", i);
     404        STAMR3RegisterF(pVM, &pVM->aCpus[i].vmm.s.CallRing3JmpBufR0.cUsedTotal, STAMTYPE_U64,       STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES, "Number of stack usages.",   "/VMM/Stack/CPU%u/Uses", i);
    405405    }
    406406#endif
     
    522522        if (rc != VINF_VMM_CALL_HOST)
    523523            break;
    524         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     524        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    525525        if (RT_FAILURE(rc) || (rc >= VINF_EM_FIRST && rc <= VINF_EM_LAST))
    526526            break;
     
    599599            if (rc != VINF_VMM_CALL_HOST)
    600600                break;
    601             rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     601            rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    602602            if (RT_FAILURE(rc) || (rc >= VINF_EM_FIRST && rc <= VINF_EM_LAST))
    603603                break;
     
    649649        if (rc != VINF_VMM_CALL_HOST)
    650650            break;
    651         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     651        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    652652        if (RT_FAILURE(rc) || (rc >= VINF_EM_FIRST && rc <= VINF_EM_LAST))
    653653            break;
     
    11721172            return rc;
    11731173        }
    1174         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     1174        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    11751175        if (RT_FAILURE(rc))
    11761176            return rc;
     
    12181218            return rc;
    12191219        }
    1220         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     1220        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    12211221        if (RT_FAILURE(rc))
    12221222            return rc;
     
    16281628    AssertReturn(pVCpu, VERR_INVALID_PARAMETER);
    16291629
    1630     RTHCUINTPTR offset = pVCpu->vmm.s.CallHostR0JmpBuf.SpCheck - pAddress;
    1631     if (offset >= pVCpu->vmm.s.CallHostR0JmpBuf.cbSavedStack)
     1630    RTHCUINTPTR offset = pVCpu->vmm.s.CallRing3JmpBufR0.SpCheck - pAddress;
     1631    if (offset >= pVCpu->vmm.s.CallRing3JmpBufR0.cbSavedStack)
    16321632        return VERR_INVALID_POINTER;
    16331633
    1634     memcpy(pvBuf, pVCpu->vmm.s.pbEMTStackR3 + pVCpu->vmm.s.CallHostR0JmpBuf.cbSavedStack - offset, cbRead);
     1634    memcpy(pvBuf, pVCpu->vmm.s.pbEMTStackR3 + pVCpu->vmm.s.CallRing3JmpBufR0.cbSavedStack - offset, cbRead);
    16351635    return VINF_SUCCESS;
    16361636}
     
    17251725            return rc;
    17261726        }
    1727         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     1727        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    17281728        if (RT_FAILURE(rc))
    17291729            return rc;
     
    17681768        if (rc != VINF_VMM_CALL_HOST)
    17691769            break;
    1770         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     1770        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    17711771        if (RT_FAILURE(rc) || (rc >= VINF_EM_FIRST && rc <= VINF_EM_LAST))
    17721772            break;
     
    18331833            return rc;
    18341834        }
    1835         rc = vmmR3ServiceCallHostRequest(pVM, pVCpu);
     1835        rc = vmmR3ServiceCallRing3Request(pVM, pVCpu);
    18361836        if (RT_FAILURE(rc))
    18371837            return rc;
     
    18481848 * @remark  Careful with critsects.
    18491849 */
    1850 static int vmmR3ServiceCallHostRequest(PVM pVM, PVMCPU pVCpu)
     1850static int vmmR3ServiceCallRing3Request(PVM pVM, PVMCPU pVCpu)
    18511851{
    18521852    /*
     
    18571857        PDMCritSectFF(pVCpu);
    18581858
    1859     switch (pVCpu->vmm.s.enmCallHostOperation)
     1859    switch (pVCpu->vmm.s.enmCallRing3Operation)
    18601860    {
    18611861        /*
     
    18641864        case VMMCALLRING3_PDM_LOCK:
    18651865        {
    1866             pVCpu->vmm.s.rcCallHost = PDMR3LockCall(pVM);
     1866            pVCpu->vmm.s.rcCallRing3 = PDMR3LockCall(pVM);
    18671867            break;
    18681868        }
     
    18741874        {
    18751875            PDMR3QueueFlushWorker(pVM, NULL);
    1876             pVCpu->vmm.s.rcCallHost = VINF_SUCCESS;
     1876            pVCpu->vmm.s.rcCallRing3 = VINF_SUCCESS;
    18771877            break;
    18781878        }
     
    18831883        case VMMCALLRING3_PGM_POOL_GROW:
    18841884        {
    1885             pVCpu->vmm.s.rcCallHost = PGMR3PoolGrow(pVM);
     1885            pVCpu->vmm.s.rcCallRing3 = PGMR3PoolGrow(pVM);
    18861886            break;
    18871887        }
     
    18921892        case VMMCALLRING3_PGM_MAP_CHUNK:
    18931893        {
    1894             pVCpu->vmm.s.rcCallHost = PGMR3PhysChunkMap(pVM, pVCpu->vmm.s.u64CallHostArg);
     1894            pVCpu->vmm.s.rcCallRing3 = PGMR3PhysChunkMap(pVM, pVCpu->vmm.s.u64CallRing3Arg);
    18951895            break;
    18961896        }
     
    19011901        case VMMCALLRING3_PGM_ALLOCATE_HANDY_PAGES:
    19021902        {
    1903             pVCpu->vmm.s.rcCallHost = PGMR3PhysAllocateHandyPages(pVM);
     1903            pVCpu->vmm.s.rcCallRing3 = PGMR3PhysAllocateHandyPages(pVM);
    19041904            break;
    19051905        }
     
    19101910        case VMMCALLRING3_PGM_LOCK:
    19111911        {
    1912             pVCpu->vmm.s.rcCallHost = PGMR3LockCall(pVM);
     1912            pVCpu->vmm.s.rcCallRing3 = PGMR3LockCall(pVM);
    19131913            break;
    19141914        }
     
    19191919        case VMMCALLRING3_MMHYPER_LOCK:
    19201920        {
    1921             pVCpu->vmm.s.rcCallHost = MMR3LockCall(pVM);
     1921            pVCpu->vmm.s.rcCallRing3 = MMR3LockCall(pVM);
    19221922            break;
    19231923        }
     
    19291929        {
    19301930            REMR3ReplayHandlerNotifications(pVM);
    1931             pVCpu->vmm.s.rcCallHost = VINF_SUCCESS;
     1931            pVCpu->vmm.s.rcCallRing3 = VINF_SUCCESS;
    19321932            break;
    19331933        }
     
    19381938         */
    19391939        case VMMCALLRING3_VMM_LOGGER_FLUSH:
    1940             pVCpu->vmm.s.rcCallHost = VINF_SUCCESS;
     1940            pVCpu->vmm.s.rcCallRing3 = VINF_SUCCESS;
    19411941            LogAlways(("*FLUSH*\n"));
    19421942            break;
     
    19471947        case VMMCALLRING3_VM_SET_ERROR:
    19481948            VMR3SetErrorWorker(pVM);
    1949             pVCpu->vmm.s.rcCallHost = VINF_SUCCESS;
     1949            pVCpu->vmm.s.rcCallRing3 = VINF_SUCCESS;
    19501950            break;
    19511951
     
    19541954         */
    19551955        case VMMCALLRING3_VM_SET_RUNTIME_ERROR:
    1956             pVCpu->vmm.s.rcCallHost = VMR3SetRuntimeErrorWorker(pVM);
     1956            pVCpu->vmm.s.rcCallRing3 = VMR3SetRuntimeErrorWorker(pVM);
    19571957            break;
    19581958
     
    19621962         */
    19631963        case VMMCALLRING3_VM_R0_ASSERTION:
    1964             pVCpu->vmm.s.enmCallHostOperation = VMMCALLRING3_INVALID;
    1965             pVCpu->vmm.s.CallHostR0JmpBuf.fInRing3Call = false;
     1964            pVCpu->vmm.s.enmCallRing3Operation = VMMCALLRING3_INVALID;
     1965            pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call = false;
    19661966#ifdef RT_ARCH_X86
    1967             pVCpu->vmm.s.CallHostR0JmpBuf.eip = 0;
     1967            pVCpu->vmm.s.CallRing3JmpBufR0.eip = 0;
    19681968#else
    1969             pVCpu->vmm.s.CallHostR0JmpBuf.rip = 0;
     1969            pVCpu->vmm.s.CallRing3JmpBufR0.rip = 0;
    19701970#endif
    19711971            LogRel((pVM->vmm.s.szRing0AssertMsg1));
     
    19771977         */
    19781978        case VMMCALLRING3_VM_R0_PREEMPT:
    1979             pVCpu->vmm.s.rcCallHost = VINF_SUCCESS;
     1979            pVCpu->vmm.s.rcCallRing3 = VINF_SUCCESS;
    19801980            break;
    19811981
    19821982        default:
    1983             AssertMsgFailed(("enmCallHostOperation=%d\n", pVCpu->vmm.s.enmCallHostOperation));
     1983            AssertMsgFailed(("enmCallRing3Operation=%d\n", pVCpu->vmm.s.enmCallRing3Operation));
    19841984            return VERR_INTERNAL_ERROR;
    19851985    }
    19861986
    1987     pVCpu->vmm.s.enmCallHostOperation = VMMCALLRING3_INVALID;
     1987    pVCpu->vmm.s.enmCallRing3Operation = VMMCALLRING3_INVALID;
    19881988    return VINF_SUCCESS;
    19891989}
  • trunk/src/VBox/VMM/VMMGuruMeditation.cpp

    r20871 r20875  
    312312                eip.fFlags   = DBGFADDRESS_FLAGS_RING0 | DBGFADDRESS_FLAGS_VALID;
    313313#if HC_ARCH_BITS == 64
    314                 eip.FlatPtr = eip.off = pVCpu->vmm.s.CallHostR0JmpBuf.rip;
     314                eip.FlatPtr = eip.off = pVCpu->vmm.s.CallRing3JmpBufR0.rip;
    315315#else
    316                 eip.FlatPtr = eip.off = pVCpu->vmm.s.CallHostR0JmpBuf.eip;
     316                eip.FlatPtr = eip.off = pVCpu->vmm.s.CallRing3JmpBufR0.eip;
    317317#endif
    318318                eip.Sel      = DBGF_SEL_FLAT;
    319319                ebp.fFlags   = DBGFADDRESS_FLAGS_RING0 | DBGFADDRESS_FLAGS_VALID;
    320                 ebp.FlatPtr  = ebp.off = pVCpu->vmm.s.CallHostR0JmpBuf.SavedEbp;
     320                ebp.FlatPtr  = ebp.off = pVCpu->vmm.s.CallRing3JmpBufR0.SavedEbp;
    321321                ebp.Sel      = DBGF_SEL_FLAT;
    322322                esp.fFlags   = DBGFADDRESS_FLAGS_RING0 | DBGFADDRESS_FLAGS_VALID;
    323323                esp.Sel      = DBGF_SEL_FLAT;
    324                 esp.FlatPtr  = esp.off = pVCpu->vmm.s.CallHostR0JmpBuf.SavedEsp;
     324                esp.FlatPtr  = esp.off = pVCpu->vmm.s.CallRing3JmpBufR0.SavedEsp;
    325325
    326326                rc2 = DBGFR3StackWalkBeginEx(pVM, pVCpu->idCpu, DBGFCODETYPE_RING0, &ebp, &esp, &eip,
  • trunk/src/VBox/VMM/VMMInternal.h

    r20874 r20875  
    349349    STAMCOUNTER                 StatRZRetTimerPending;
    350350    STAMCOUNTER                 StatRZRetInterruptPending;
    351     STAMCOUNTER                 StatRZRetCallHost;
     351    STAMCOUNTER                 StatRZRetCallRing3;
    352352    STAMCOUNTER                 StatRZRetPATMDuplicateFn;
    353353    STAMCOUNTER                 StatRZRetPGMChangeMode;
     
    406406    uint32_t                    cCallRing3Disabled;
    407407    /** The pending operation. */
    408     VMMCALLRING3                 enmCallHostOperation;
     408    VMMCALLRING3                enmCallRing3Operation;
    409409    /** The result of the last operation. */
    410     int32_t                     rcCallHost;
     410    int32_t                     rcCallRing3;
    411411#if HC_ARCH_BITS == 64
    412412    uint32_t                    padding;
    413413#endif
    414414    /** The argument to the operation. */
    415     uint64_t                    u64CallHostArg;
     415    uint64_t                    u64CallRing3Arg;
    416416    /** The Ring-0 jmp buffer. */
    417     VMMR0JMPBUF                 CallHostR0JmpBuf;
     417    VMMR0JMPBUF                 CallRing3JmpBufR0;
    418418    /** @} */
    419419
     
    499499
    500500/**
    501  * Callback function for vmmR0CallHostSetJmp.
     501 * Callback function for vmmR0CallRing3SetJmp.
    502502 *
    503503 * @returns VBox status code.
     
    515515 * argument. This has to do with resuming code and the stack frame of the caller.
    516516 *
    517  * @returns VINF_SUCCESS on success or whatever is passed to vmmR0CallHostLongJmp.
     517 * @returns VINF_SUCCESS on success or whatever is passed to vmmR0CallRing3LongJmp.
    518518 * @param   pJmpBuf     The jmp_buf to set.
    519519 * @param   pfn         The function to be called when not resuming..
    520520 * @param   pVM         The argument of that function.
    521521 */
    522 DECLASM(int)    vmmR0CallHostSetJmp(PVMMR0JMPBUF pJmpBuf, PFNVMMR0SETJMP pfn, PVM pVM, PVMCPU pVCpu);
    523 
    524 /**
    525  * Callback function for vmmR0CallHostSetJmpEx.
     522DECLASM(int)    vmmR0CallRing3SetJmp(PVMMR0JMPBUF pJmpBuf, PFNVMMR0SETJMP pfn, PVM pVM, PVMCPU pVCpu);
     523
     524/**
     525 * Callback function for vmmR0CallRing3SetJmpEx.
    526526 *
    527527 * @returns VBox status code.
     
    533533
    534534/**
    535  * Same as vmmR0CallHostSetJmp except for the function signature.
    536  *
    537  * @returns VINF_SUCCESS on success or whatever is passed to vmmR0CallHostLongJmp.
     535 * Same as vmmR0CallRing3SetJmp except for the function signature.
     536 *
     537 * @returns VINF_SUCCESS on success or whatever is passed to vmmR0CallRing3LongJmp.
    538538 * @param   pJmpBuf     The jmp_buf to set.
    539539 * @param   pfn         The function to be called when not resuming..
    540540 * @param   pvUser      The argument of that function.
    541541 */
    542 DECLASM(int)    vmmR0CallHostSetJmpEx(PVMMR0JMPBUF pJmpBuf, PFNVMMR0SETJMPEX pfn, void *pvUser);
     542DECLASM(int)    vmmR0CallRing3SetJmpEx(PVMMR0JMPBUF pJmpBuf, PFNVMMR0SETJMPEX pfn, void *pvUser);
    543543
    544544
     
    551551 * @param   rc              The return code.
    552552 */
    553 DECLASM(int)    vmmR0CallHostLongJmp(PVMMR0JMPBUF pJmpBuf, int rc);
     553DECLASM(int)    vmmR0CallRing3LongJmp(PVMMR0JMPBUF pJmpBuf, int rc);
    554554
    555555/**
  • trunk/src/VBox/VMM/VMMR0/VMMR0.cpp

    r20874 r20875  
    424424            break;
    425425        case VINF_VMM_CALL_HOST:
    426             switch (pVCpu->vmm.s.enmCallHostOperation)
     426            switch (pVCpu->vmm.s.enmCallRing3Operation)
    427427            {
    428428                case VMMCALLRING3_PDM_LOCK:
     
    458458                case VMMCALLRING3_VM_R0_ASSERTION:
    459459                default:
    460                     STAM_COUNTER_INC(&pVM->vmm.s.StatRZRetCallHost);
     460                    STAM_COUNTER_INC(&pVM->vmm.s.StatRZRetCallRing3);
    461461                    break;
    462462            }
     
    628628                if (RT_SUCCESS(rc))
    629629                {
    630                     rc = vmmR0CallHostSetJmp(&pVCpu->vmm.s.CallHostR0JmpBuf, HWACCMR0RunGuestCode, pVM, pVCpu); /* this may resume code. */
     630                    rc = vmmR0CallRing3SetJmp(&pVCpu->vmm.s.CallRing3JmpBufR0, HWACCMR0RunGuestCode, pVM, pVCpu); /* this may resume code. */
    631631                    int rc2 = HWACCMR0Leave(pVM, pVCpu);
    632632                    AssertRC(rc2);
     
    11101110                PVMCPU pVCpu = &pVM->aCpus[idCpu];
    11111111
    1112                 if (!pVCpu->vmm.s.CallHostR0JmpBuf.pvSavedStack)
     1112                if (!pVCpu->vmm.s.CallRing3JmpBufR0.pvSavedStack)
    11131113                    break;
    11141114
     
    11211121                Args.u64Arg = u64Arg;
    11221122                Args.pSession = pSession;
    1123                 return vmmR0CallHostSetJmpEx(&pVCpu->vmm.s.CallHostR0JmpBuf, vmmR0EntryExWrapper, &Args);
     1123                return vmmR0CallRing3SetJmpEx(&pVCpu->vmm.s.CallRing3JmpBufR0, vmmR0EntryExWrapper, &Args);
    11241124            }
    11251125
     
    11731173     */
    11741174# ifdef RT_ARCH_X86
    1175     if (    !pVCpu->vmm.s.CallHostR0JmpBuf.eip
    1176         ||  pVCpu->vmm.s.CallHostR0JmpBuf.fInRing3Call)
     1175    if (    !pVCpu->vmm.s.CallRing3JmpBufR0.eip
     1176        ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
    11771177# else
    1178     if (    !pVCpu->vmm.s.CallHostR0JmpBuf.rip
    1179         ||  pVCpu->vmm.s.CallHostR0JmpBuf.fInRing3Call)
     1178    if (    !pVCpu->vmm.s.CallRing3JmpBufR0.rip
     1179        ||  pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
    11801180# endif
    11811181    {
     
    12651265
    12661266#ifdef RT_ARCH_X86
    1267         if (    pVCpu->vmm.s.CallHostR0JmpBuf.eip
    1268             &&  !pVCpu->vmm.s.CallHostR0JmpBuf.fInRing3Call)
     1267        if (    pVCpu->vmm.s.CallRing3JmpBufR0.eip
     1268            &&  !pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
    12691269#else
    1270         if (    pVCpu->vmm.s.CallHostR0JmpBuf.rip
    1271             &&  !pVCpu->vmm.s.CallHostR0JmpBuf.fInRing3Call)
     1270        if (    pVCpu->vmm.s.CallRing3JmpBufR0.rip
     1271            &&  !pVCpu->vmm.s.CallRing3JmpBufR0.fInRing3Call)
    12721272#endif
    12731273        {
  • trunk/src/VBox/VMM/VMMR0/VMMR0JmpA-amd64.asm

    r20874 r20875  
    5050; argument. This has to do with resuming code and the stack frame of the caller.
    5151;
    52 ; @returns  VINF_SUCCESS on success or whatever is passed to vmmR0CallHostLongJmp.
     52; @returns  VINF_SUCCESS on success or whatever is passed to vmmR0CallRing3LongJmp.
    5353; @param    pJmpBuf msc:rcx gcc:rdi x86:[esp+0x04]     Our jmp_buf.
    5454; @param    pfn     msc:rdx gcc:rsi x86:[esp+0x08]     The function to be called when not resuming.
     
    5656; @param    pvUser2 msc:r9  gcc:rcx x86:[esp+0x10]     The argument of that function.
    5757;
    58 BEGINPROC vmmR0CallHostSetJmp
    59 GLOBALNAME vmmR0CallHostSetJmpEx
     58BEGINPROC vmmR0CallRing3SetJmp
     59GLOBALNAME vmmR0CallRing3SetJmpEx
    6060    ;
    6161    ; Save the registers.
     
    236236    xor     eax, eax                    ; VINF_SUCCESS
    237237    ret
    238 ENDPROC vmmR0CallHostSetJmp
     238ENDPROC vmmR0CallRing3SetJmp
    239239
    240240
     
    246246; @param    rc      msc:rdx gcc:rsi x86:[ebp+c]     The return code.
    247247;
    248 BEGINPROC vmmR0CallHostLongJmp
     248BEGINPROC vmmR0CallRing3LongJmp
    249249    ;
    250250    ; Save the registers on the stack.
     
    363363    leave
    364364    ret
    365 ENDPROC vmmR0CallHostLongJmp
     365ENDPROC vmmR0CallRing3LongJmp
    366366
    367367
  • trunk/src/VBox/VMM/VMMR0/VMMR0JmpA-x86.asm

    r20874 r20875  
    5050; argument. This has to do with resuming code and the stack frame of the caller.
    5151;
    52 ; @returns  VINF_SUCCESS on success or whatever is passed to vmmR0CallHostLongJmp.
     52; @returns  VINF_SUCCESS on success or whatever is passed to vmmR0CallRing3LongJmp.
    5353; @param    pJmpBuf msc:rcx gcc:rdi x86:[esp+0x04]     Our jmp_buf.
    5454; @param    pfn     msc:rdx gcc:rsi x86:[esp+0x08]     The function to be called when not resuming.
     
    5656; @param    pvUser2 msc:r9  gcc:rcx x86:[esp+0x10]     The argument of that function.
    5757;
    58 BEGINPROC vmmR0CallHostSetJmp
    59 GLOBALNAME vmmR0CallHostSetJmpEx
     58BEGINPROC vmmR0CallRing3SetJmp
     59GLOBALNAME vmmR0CallRing3SetJmpEx
    6060    ;
    6161    ; Save the registers.
     
    270270    xor     eax, eax                    ; VINF_SUCCESS
    271271    ret
    272 ENDPROC vmmR0CallHostSetJmp
     272ENDPROC vmmR0CallRing3SetJmp
    273273
    274274
     
    280280; @param    rc      msc:rdx gcc:rsi x86:[ebp+c]     The return code.
    281281;
    282 BEGINPROC vmmR0CallHostLongJmp
     282BEGINPROC vmmR0CallRing3LongJmp
    283283    ;
    284284    ; Save the registers on the stack.
     
    373373    leave
    374374    ret
    375 ENDPROC vmmR0CallHostLongJmp
     375ENDPROC vmmR0CallRing3LongJmp
    376376
    377377
  • trunk/src/VBox/VMM/VMMRZ/VMMRZ.cpp

    r20874 r20875  
    8282     */
    8383/** @todo profile this! */
    84     pVCpu->vmm.s.enmCallHostOperation = enmOperation;
    85     pVCpu->vmm.s.u64CallHostArg = uArg;
    86     pVCpu->vmm.s.rcCallHost = VERR_INTERNAL_ERROR;
     84    pVCpu->vmm.s.enmCallRing3Operation = enmOperation;
     85    pVCpu->vmm.s.u64CallRing3Arg = uArg;
     86    pVCpu->vmm.s.rcCallRing3 = VERR_INTERNAL_ERROR;
    8787#ifdef IN_RC
    8888    pVM->vmm.s.pfnGuestToHostRC(VINF_VMM_CALL_HOST);
    8989#else
    90     int rc = vmmR0CallHostLongJmp(&pVCpu->vmm.s.CallHostR0JmpBuf, VINF_VMM_CALL_HOST);
     90    int rc = vmmR0CallRing3LongJmp(&pVCpu->vmm.s.CallRing3JmpBufR0, VINF_VMM_CALL_HOST);
    9191    if (RT_FAILURE(rc))
    9292        return rc;
    9393#endif
    94     return pVCpu->vmm.s.rcCallHost;
     94    return pVCpu->vmm.s.rcCallRing3;
    9595}
    9696
  • trunk/src/VBox/VMM/testcase/tstVMMR0CallHost-1.cpp

    r20794 r20875  
    8080    {
    8181        g_cJmps++;
    82         int rc = vmmR0CallHostLongJmp(&g_Jmp, 42);
     82        int rc = vmmR0CallRing3LongJmp(&g_Jmp, 42);
    8383        if (!rc)
    8484            return i + 10000;
     
    118118    for (int i = iFrom, iItr = 0; i != iTo; i += iInc, iItr++)
    119119    {
    120         int rc = vmmR0CallHostSetJmp(&g_Jmp, (PFNVMMR0SETJMP)tst2, (PVM)i, 0);
     120        int rc = vmmR0CallRing3SetJmp(&g_Jmp, (PFNVMMR0SETJMP)tst2, (PVM)i, 0);
    121121        RTTESTI_CHECK_MSG_RETV(rc == 0 || rc == 42, ("i=%d rc=%d setjmp; cbFoo=%#x cbFooUsed=%#x\n", i, rc, g_cbFoo, g_cbFooUsed));
    122122
  • trunk/src/VBox/VMM/testcase/tstVMStructGC.cpp

    r20871 r20875  
    933933#endif
    934934    GEN_CHECK_OFF(VMMCPU, cCallRing3Disabled);
    935     GEN_CHECK_OFF(VMMCPU, enmCallHostOperation);
    936     GEN_CHECK_OFF(VMMCPU, rcCallHost);
    937     GEN_CHECK_OFF(VMMCPU, u64CallHostArg);
    938     GEN_CHECK_OFF(VMMCPU, CallHostR0JmpBuf);
    939     GEN_CHECK_OFF(VMMCPU, CallHostR0JmpBuf.SpCheck);
    940     GEN_CHECK_OFF(VMMCPU, CallHostR0JmpBuf.SpResume);
     935    GEN_CHECK_OFF(VMMCPU, enmCallRing3Operation);
     936    GEN_CHECK_OFF(VMMCPU, rcCallRing3);
     937    GEN_CHECK_OFF(VMMCPU, u64CallRing3Arg);
     938    GEN_CHECK_OFF(VMMCPU, CallRing3JmpBufR0);
     939    GEN_CHECK_OFF(VMMCPU, CallRing3JmpBufR0.SpCheck);
     940    GEN_CHECK_OFF(VMMCPU, CallRing3JmpBufR0.SpResume);
    941941
    942942    GEN_CHECK_SIZE(RTPINGPONG);
  • trunk/src/VBox/VMM/testcase/tstVMStructSize.cpp

    r20784 r20875  
    196196    CHECK_MEMBER_ALIGNMENT(VM, cpum.s.GuestEntry, 64);
    197197
    198     CHECK_MEMBER_ALIGNMENT(VMCPU, vmm.s.u64CallHostArg, 8);
    199     CHECK_MEMBER_ALIGNMENT(VMCPU, vmm.s.CallHostR0JmpBuf, 8);
     198    CHECK_MEMBER_ALIGNMENT(VMCPU, vmm.s.u64CallRing3Arg, 8);
     199    CHECK_MEMBER_ALIGNMENT(VMCPU, vmm.s.CallRing3JmpBufR0, 8);
    200200    CHECK_MEMBER_ALIGNMENT(VM, vmm.s.u64LastYield, 8);
    201201    CHECK_MEMBER_ALIGNMENT(VM, vmm.s.StatRunRC, 8);
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