VirtualBox

Changeset 70733 in vbox for trunk/src/VBox/VMM/VMMAll


Ignore:
Timestamp:
Jan 25, 2018 4:51:06 AM (7 years ago)
Author:
vboxsync
Message:

VMM/IEM: Moved fGif out of svm hwvirt and into common nested hwvirt. struct.

Location:
trunk/src/VBox/VMM/VMMAll
Files:
2 edited

Legend:

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

    r70643 r70733  
    1391613916    /** @todo Maybe someday we can centralize this under CPUMCanInjectInterrupt()? */
    1391713917#if defined(VBOX_WITH_NESTED_HWVIRT)
    13918     bool fIntrEnabled = pOrgCtx->hwvirt.svm.fGif;
     13918    bool fIntrEnabled = pOrgCtx->hwvirt.Gif;
    1391913919    if (fIntrEnabled)
    1392013920    {
     
    1527715277    /** @todo Maybe someday we can centralize this under CPUMCanInjectInterrupt()? */
    1527815278#if defined(VBOX_WITH_NESTED_HWVIRT)
    15279     bool fIntrEnabled = pCtx->hwvirt.svm.fGif;
     15279    bool fIntrEnabled = pCtx->hwvirt.Gif;
    1528015280    if (fIntrEnabled)
    1528115281    {
     
    1534315343    /** @todo Can we centralize this under CPUMCanInjectInterrupt()? */
    1534415344#if defined(VBOX_WITH_NESTED_HWVIRT)
    15345     bool fIntrEnabled = pCtx->hwvirt.svm.fGif;
     15345    bool fIntrEnabled = pCtx->hwvirt.fGif;
    1534615346    if (fIntrEnabled)
    1534715347    {
  • trunk/src/VBox/VMM/VMMAll/IEMAllCImplSvmInstr.cpp.h

    r70464 r70733  
    112112         * Disable the global interrupt flag to prevent interrupts during the 'atomic' world switch.
    113113         */
    114         pCtx->hwvirt.svm.fGif = false;
     114        pCtx->hwvirt.fGif = false;
    115115
    116116        Assert(CPUMSELREG_ARE_HIDDEN_PARTS_VALID(pVCpu, &pCtx->es));
     
    632632         * Clear global interrupt flags to allow interrupts in the guest.
    633633         */
    634         pCtx->hwvirt.svm.fGif = true;
     634        pCtx->hwvirt.fGif = true;
    635635
    636636        /*
     
    678678             *        NRIP for the nested-guest to calculate the instruction length
    679679             *        below. */
    680             LogFlow(("iemSvmVmrun: Injecting event: %04x:%08RX64 uVector=%#x enmType=%d uErrorCode=%u cr2=%#RX64 efer=%#RX64\n",
    681                      pCtx->cs.Sel, pCtx->rip, uVector, enmType, uErrorCode, pCtx->cr2, pCtx->msrEFER));
     680            LogFlow(("iemSvmVmrun: Injecting event: %04x:%08RX64 vec=%#x type=%d uErr=%u cr2=%#RX64 cr3=%#RX64 efer=%#RX64\n",
     681                     pCtx->cs.Sel, pCtx->rip, uVector, enmType, uErrorCode, pCtx->cr2, pCtx->cr3, pCtx->msrEFER));
    682682            rcStrict = IEMInjectTrap(pVCpu, uVector, enmType, uErrorCode, pCtx->cr2, 0 /* cbInstr */);
    683683        }
     
    12741274    }
    12751275
    1276     pCtx->hwvirt.svm.fGif = false;
     1276    pCtx->hwvirt.fGif = false;
    12771277    iemRegAddToRipAndClearRF(pVCpu, cbInstr);
    12781278
     
    13041304    }
    13051305
    1306     pCtx->hwvirt.svm.fGif = true;
     1306    pCtx->hwvirt.fGif = true;
    13071307    iemRegAddToRipAndClearRF(pVCpu, cbInstr);
    13081308
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