VirtualBox

Changeset 76097 in vbox for trunk/src/VBox/VMM/VMMR0


Ignore:
Timestamp:
Dec 10, 2018 5:53:32 AM (6 years ago)
Author:
vboxsync
Message:

VMM/HMVMXR0: Spaces.

File:
1 edited

Legend:

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

    r76042 r76097  
    22922292
    22932293    fVal |= VMX_PIN_CTLS_EXT_INT_EXIT                        /* External interrupts cause a VM-exit. */
    2294           | VMX_PIN_CTLS_NMI_EXIT;                           /* Non-maskable interrupts (NMIs) cause a VM-exit. */
     2294         | VMX_PIN_CTLS_NMI_EXIT;                           /* Non-maskable interrupts (NMIs) cause a VM-exit. */
    22952295
    22962296    if (pVM->hm.s.vmx.Msrs.PinCtls.n.allowed1 & VMX_PIN_CTLS_VIRT_NMI)
    2297         fVal |= VMX_PIN_CTLS_VIRT_NMI;                        /* Use virtual NMIs and virtual-NMI blocking features. */
     2297        fVal |= VMX_PIN_CTLS_VIRT_NMI;                       /* Use virtual NMIs and virtual-NMI blocking features. */
    22982298
    22992299    /* Enable the VMX preemption timer. */
     
    24442444
    24452445    fVal |= VMX_PROC_CTLS_HLT_EXIT                                    /* HLT causes a VM-exit. */
    2446           | VMX_PROC_CTLS_USE_TSC_OFFSETTING                          /* Use TSC-offsetting. */
    2447           | VMX_PROC_CTLS_MOV_DR_EXIT                                 /* MOV DRx causes a VM-exit. */
    2448           | VMX_PROC_CTLS_UNCOND_IO_EXIT                              /* All IO instructions cause a VM-exit. */
    2449           | VMX_PROC_CTLS_RDPMC_EXIT                                  /* RDPMC causes a VM-exit. */
    2450           | VMX_PROC_CTLS_MONITOR_EXIT                                /* MONITOR causes a VM-exit. */
    2451           | VMX_PROC_CTLS_MWAIT_EXIT;                                 /* MWAIT causes a VM-exit. */
     2446         | VMX_PROC_CTLS_USE_TSC_OFFSETTING                          /* Use TSC-offsetting. */
     2447         | VMX_PROC_CTLS_MOV_DR_EXIT                                 /* MOV DRx causes a VM-exit. */
     2448         | VMX_PROC_CTLS_UNCOND_IO_EXIT                              /* All IO instructions cause a VM-exit. */
     2449         | VMX_PROC_CTLS_RDPMC_EXIT                                  /* RDPMC causes a VM-exit. */
     2450         | VMX_PROC_CTLS_MONITOR_EXIT                                /* MONITOR causes a VM-exit. */
     2451         | VMX_PROC_CTLS_MWAIT_EXIT;                                 /* MWAIT causes a VM-exit. */
    24522452
    24532453    /* We toggle VMX_PROC_CTLS_MOV_DR_EXIT later, check if it's not -always- needed to be set or clear. */
     
    24652465        Assert(!pVM->hm.s.vmx.fUnrestrictedGuest);                /* Paranoia. */
    24662466        fVal |= VMX_PROC_CTLS_INVLPG_EXIT
    2467               | VMX_PROC_CTLS_CR3_LOAD_EXIT
    2468               | VMX_PROC_CTLS_CR3_STORE_EXIT;
     2467             | VMX_PROC_CTLS_CR3_LOAD_EXIT
     2468             | VMX_PROC_CTLS_CR3_STORE_EXIT;
    24692469    }
    24702470
     
    24932493        {
    24942494            fVal |= VMX_PROC_CTLS_CR8_STORE_EXIT                  /* CR8 reads cause a VM-exit. */
    2495                   | VMX_PROC_CTLS_CR8_LOAD_EXIT;                  /* CR8 writes cause a VM-exit. */
     2495                 | VMX_PROC_CTLS_CR8_LOAD_EXIT;                  /* CR8 writes cause a VM-exit. */
    24962496        }
    24972497    }
     
    36823682                /* The guest doesn't have paging enabled, make CR3 access cause a VM-exit to update our shadow. */
    36833683                uProcCtls |= VMX_PROC_CTLS_CR3_LOAD_EXIT
    3684                            | VMX_PROC_CTLS_CR3_STORE_EXIT;
     3684                          | VMX_PROC_CTLS_CR3_STORE_EXIT;
    36853685            }
    36863686
     
    37303730#ifdef HMVMX_ALWAYS_TRAP_ALL_XCPTS
    37313731        uXcptBitmap |= 0
    3732                      | RT_BIT(X86_XCPT_BP)
    3733                      | RT_BIT(X86_XCPT_DE)
    3734                      | RT_BIT(X86_XCPT_NM)
    3735                      | RT_BIT(X86_XCPT_TS)
    3736                      | RT_BIT(X86_XCPT_UD)
    3737                      | RT_BIT(X86_XCPT_NP)
    3738                      | RT_BIT(X86_XCPT_SS)
    3739                      | RT_BIT(X86_XCPT_GP)
    3740                      | RT_BIT(X86_XCPT_PF)
    3741                      | RT_BIT(X86_XCPT_MF)
    3742                      ;
     3732                    | RT_BIT(X86_XCPT_BP)
     3733                    | RT_BIT(X86_XCPT_DE)
     3734                    | RT_BIT(X86_XCPT_NM)
     3735                    | RT_BIT(X86_XCPT_TS)
     3736                    | RT_BIT(X86_XCPT_UD)
     3737                    | RT_BIT(X86_XCPT_NP)
     3738                    | RT_BIT(X86_XCPT_SS)
     3739                    | RT_BIT(X86_XCPT_GP)
     3740                    | RT_BIT(X86_XCPT_PF)
     3741                    | RT_BIT(X86_XCPT_MF)
     3742                    ;
    37433743#elif defined(HMVMX_ALWAYS_TRAP_PF)
    37443744        uXcptBitmap |= RT_BIT(X86_XCPT_PF);
     
    38523852            /* VMX_EPT_MEMTYPE_WB support is already checked in hmR0VmxSetupTaggedTlb(). */
    38533853            pVCpu->hm.s.vmx.HCPhysEPTP |= VMX_EPT_MEMTYPE_WB
    3854                                         | (VMX_EPT_PAGE_WALK_LENGTH_DEFAULT << VMX_EPT_PAGE_WALK_LENGTH_SHIFT);
     3854                                       | (VMX_EPT_PAGE_WALK_LENGTH_DEFAULT << VMX_EPT_PAGE_WALK_LENGTH_SHIFT);
    38553855
    38563856            /* Validate. See Intel spec. 26.2.1 "Checks on VMX Controls" */
     
    65226522        if (VMCPU_FF_IS_SET(pVCpu, VMCPU_FF_INHIBIT_INTERRUPTS))
    65236523        {
    6524             rc = hmR0VmxImportGuestRip(pVCpu);
     6524            rc  = hmR0VmxImportGuestRip(pVCpu);
    65256525            rc |= hmR0VmxImportGuestRFlags(pVCpu);
     6526            AssertRCReturn(rc, rc);
    65266527            VMCPU_FF_CLEAR(pVCpu, VMCPU_FF_INHIBIT_INTERRUPTS);
    65276528        }
     
    65326533    else
    65336534    {
    6534         rc = hmR0VmxImportGuestRip(pVCpu);
     6535        rc  = hmR0VmxImportGuestRip(pVCpu);
    65356536        rc |= hmR0VmxImportGuestRFlags(pVCpu);
     6537        AssertRCReturn(rc, rc);
    65366538
    65376539        if (u32Val & (  VMX_VMCS_GUEST_INT_STATE_BLOCK_MOVSS
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