VirtualBox

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


Ignore:
Timestamp:
Nov 23, 2021 10:07:54 AM (3 years ago)
Author:
vboxsync
Message:

VMM/NEMR3Native-darwin: Smaller fixes, bugref:9044

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/NEMR3Native-darwin.cpp

    r92541 r92560  
    404404*   Internal Functions                                                                                                           *
    405405*********************************************************************************************************************************/
     406static void vmxHCImportGuestIntrState(PVMCPUCC pVCpu, PCVMXVMCSINFO pVmcsInfo);
    406407
    407408/**
     
    823824    fWhat &= pVCpu->cpum.GstCtx.fExtrn;
    824825
     826    if (fWhat & (CPUMCTX_EXTRN_INHIBIT_INT | CPUMCTX_EXTRN_INHIBIT_NMI))
     827        vmxHCImportGuestIntrState(pVCpu, &pVCpu->nem.s.VmcsInfo);
     828
    825829    /* GPRs */
    826830    hv_return_t hrc;
     
    21502154static int nemR3DarwinVmxSetupVmcsProcCtls(PVMCPUCC pVCpu, PVMXVMCSINFO pVmcsInfo)
    21512155{
    2152     PVMCC pVM = pVCpu->CTX_SUFF(pVM);
    21532156    uint32_t       fVal = g_HmMsrs.u.vmx.ProcCtls.n.allowed0;     /* Bits set here must be set in the VMCS. */
    21542157    uint32_t const fZap = g_HmMsrs.u.vmx.ProcCtls.n.allowed1;     /* Bits cleared here must be cleared in the VMCS. */
     
    25212524 * @param   pVM                 The VM handle.
    25222525 * @param   pVCpu               The vCPU handle.
    2523  * @param   idCpu               ID of the CPU to create.
    2524  */
    2525 static DECLCALLBACK(int) nemR3DarwinNativeInitTprShadowing(PVM pVM, PVMCPU pVCpu, VMCPUID idCpu)
     2526 */
     2527static DECLCALLBACK(int) nemR3DarwinNativeInitTprShadowing(PVM pVM, PVMCPU pVCpu)
    25262528{
    25272529    PVMXVMCSINFO pVmcsInfo = &pVCpu->nem.s.VmcsInfo;
     
    25982600            PVMCPU pVCpu = pVM->apCpusR3[idCpu];
    25992601
    2600             int rc = VMR3ReqCallWait(pVM, idCpu, (PFNRT)nemR3DarwinNativeInitTprShadowing, 3, pVM, pVCpu, idCpu);
     2602            int rc = VMR3ReqCallWait(pVM, idCpu, (PFNRT)nemR3DarwinNativeInitTprShadowing, 2, pVM, pVCpu);
    26012603            if (RT_FAILURE(rc))
    2602                 return VMSetError(pVM, VERR_NEM_VM_CREATE_FAILED, RT_SRC_POS, "Call to hv_vcpu_create failed: %Rrc", rc);
     2604                return VMSetError(pVM, VERR_NEM_VM_CREATE_FAILED, RT_SRC_POS, "Setting up TPR shadowing failed: %Rrc", rc);
    26032605        }
    26042606    }
     
    28792881    {
    28802882        /* Try anticipate what we might need. */
    2881         uint64_t fImport = IEM_CPUMCTX_EXTRN_MUST_MASK;
     2883        uint64_t fImport = NEM_DARWIN_CPUMCTX_EXTRN_MASK_FOR_IEM;
    28822884        if (   (rcStrict >= VINF_EM_FIRST && rcStrict <= VINF_EM_LAST)
    28832885            || RT_FAILURE(rcStrict))
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