VirtualBox

Changeset 92521 in vbox


Ignore:
Timestamp:
Nov 20, 2021 2:21:32 AM (3 years ago)
Author:
vboxsync
Message:

VMM/TRPMR3InjectEvent: Only windows want's to use IEM to inject interrupts, so make it an opt-out of the TRPMAssertTrap behaviour instead of a NEM default. bugref:9044

File:
1 edited

Legend:

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

    r92454 r92521  
    382382        }
    383383#endif
     384#ifdef RT_OS_WINDOWS
    384385        if (!VM_IS_NEM_ENABLED(pVM))
    385386        {
     387#endif
    386388            rc = TRPMAssertTrap(pVCpu, u8Interrupt, TRPM_HARDWARE_INT);
    387389            AssertRC(rc);
     390#ifdef RT_OS_WINDOWS
    388391        }
    389392        else
    390393        {
    391 #ifdef RT_OS_DARWIN
    392             /** @todo Can this be done prettier? NEM on darwin shares the R0 VMX code which relies on the same behavior as in the non NEM case. */
    393             rc = TRPMAssertTrap(pVCpu, u8Interrupt, TRPM_HARDWARE_INT);
    394             AssertRC(rc);
    395 #else
    396394            VBOXSTRICTRC rcStrict = IEMInjectTrap(pVCpu, u8Interrupt, enmEvent, 0, 0, 0);
    397395            /** @todo NSTVMX: NSTSVM: We don't support nested VMX or nested SVM with NEM yet.
     
    399397            if (rcStrict != VINF_SUCCESS)
    400398                return VBOXSTRICTRC_TODO(rcStrict);
     399        }
    401400#endif
    402         }
    403401        STAM_REL_COUNTER_INC(&pVM->trpm.s.aStatForwardedIRQ[u8Interrupt]);
    404402    }
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