VirtualBox

Changeset 75917 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Dec 3, 2018 4:53:41 PM (6 years ago)
Author:
vboxsync
Message:

VMM/EM: Inject NMIs as well (disabled for now).

File:
1 edited

Legend:

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

    r75885 r75917  
    21112111        }
    21122112
     2113        /* SMIs take priority over if we ever support them will have to be injected here. */
     2114
    21132115#ifdef VBOX_WITH_NESTED_HWVIRT_VMX
    21142116        /*
     
    21332135            if (rc2 != VINF_VMX_INTERCEPT_NOT_ACTIVE)
    21342136                UPDATE_RC();
     2137        }
     2138#endif
     2139
     2140        /** @todo Enable when I get time to test this specific code path later. */
     2141#if 0
     2142        /*
     2143         * NMIs.
     2144         * NMIs take priority over external interrupts.
     2145         */
     2146        bool fWakeupPending = false;
     2147        if (    VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INTERRUPT_NMI)
     2148            && !VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_BLOCK_NMIS)
     2149            && !VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INHIBIT_INTERRUPTS))
     2150        {
     2151            rc2 = TRPMAssertTrap(pVCpu, X86_XCPT_NMI, TRPM_TRAP);
     2152            if (rc2 == VINF_SUCCESS)
     2153            {
     2154                fWakeupPending = true;
     2155                if (pVM->em.s.fIemExecutesAll)
     2156                    rc2 = VINF_EM_RESCHEDULE;
     2157                else
     2158                {
     2159                    rc2 = HMR3IsActive(pVCpu)    ? VINF_EM_RESCHEDULE_HM
     2160                        : VM_IS_NEM_ENABLED(pVM) ? VINF_EM_RESCHEDULE
     2161                        :                          VINF_EM_RESCHEDULE_REM;
     2162                }
     2163            }
    21352164        }
    21362165#endif
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