VirtualBox

Changeset 66961 in vbox


Ignore:
Timestamp:
May 19, 2017 7:14:58 AM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
115502
Message:

VMM/HMSVMR0: Clear NMI blocking if we're re-injecting an NMI that caused an exception, and not just when a #PF.

File:
1 edited

Legend:

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

    r66948 r66961  
    40804080                    RTGCUINTPTR GCPtrFaultAddress = 0;
    40814081
     4082                    /* If we are re-injecting the NMI, clear NMI blocking. */
     4083                    if (fRaiseInfo & IEMXCPTRAISEINFO_NMI_XCPT)
     4084                        VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_BLOCK_NMIS);
     4085
    40824086                    /* Determine a vectoring #PF condition, see comment in hmR0SvmExitXcptPF(). */
    40834087                    if (fRaiseInfo & (IEMXCPTRAISEINFO_EXT_INT_PF | IEMXCPTRAISEINFO_NMI_PF))
    4084                     {
    40854088                        pSvmTransient->fVectoringPF = true;
    4086                         /* If we are re-injecting the NMI, clear NMI blocking. */
    4087                         if (fRaiseInfo & IEMXCPTRAISEINFO_NMI_XCPT)
    4088                             VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_BLOCK_NMIS);
    4089                     }
    40904089                    else if (uIdtVector == X86_XCPT_PF)
    40914090                    {
Note: See TracChangeset for help on using the changeset viewer.

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