VirtualBox

Changeset 73431 in vbox for trunk/include/VBox


Ignore:
Timestamp:
Aug 1, 2018 2:56:26 PM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
124055
Message:

VMM: Nested VMX: bugref:9180 Don't forget to report the VMCS size in IA32_VMX_BASIC MSR, nits.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/hm_vmx.h

    r73427 r73431  
    11131113#define VMX_BF_BASIC_VMCS_ID_SHIFT                              0
    11141114#define VMX_BF_BASIC_VMCS_ID_MASK                               UINT64_C(0x000000007fffffff)
    1115 /** Bit 32 is reserved as RAZ. */
     1115/** Bit 31 is reserved and RAZ. */
    11161116#define VMX_BF_BASIC_RSVD_32_SHIFT                              31
    11171117#define VMX_BF_BASIC_RSVD_32_MASK                               UINT64_C(0x0000000080000000)
     
    11711171#define VMX_BF_MISC_ACTIVITY_STATES_SHIFT                       6
    11721172#define VMX_BF_MISC_ACTIVITY_STATES_MASK                        UINT64_C(0x00000000000001c0)
    1173 /** Bits 9:13 is reserved, RAZ. */
     1173/** Bits 9:13 is reserved and RAZ. */
    11741174#define VMX_BF_MISC_RSVD_9_13_SHIFT                             9
    11751175#define VMX_BF_MISC_RSVD_9_13_MASK                              UINT64_C(0x0000000000003e00)
     
    11981198#define VMX_BF_MISC_ENTRY_INJECT_SOFT_INT_SHIFT                 30
    11991199#define VMX_BF_MISC_ENTRY_INJECT_SOFT_INT_MASK                  UINT64_C(0x0000000040000000)
    1200 /** Bit 31 is reserved, RAZ. */
     1200/** Bit 31 is reserved and RAZ. */
    12011201#define VMX_BF_MISC_RSVD_31_SHIFT                               31
    12021202#define VMX_BF_MISC_RSVD_31_MASK                                UINT64_C(0x0000000080000000)
     
    12141214 * @{
    12151215 */
    1216 /** Bit 0 is reserved, RAZ.  */
     1216/** Bit 0 is reserved and RAZ.  */
    12171217#define VMX_BF_VMCS_ENUM_RSVD_0_SHIFT                           0
    12181218#define VMX_BF_VMCS_ENUM_RSVD_0_MASK                            UINT64_C(0x0000000000000001)
     
    12201220#define VMX_BF_VMCS_ENUM_HIGHEST_IDX_SHIFT                      1
    12211221#define VMX_BF_VMCS_ENUM_HIGHEST_IDX_MASK                       UINT64_C(0x00000000000003fe)
    1222 /** Bit 10:63 is reserved, RAZ.  */
     1222/** Bit 10:63 is reserved and RAZ.  */
    12231223#define VMX_BF_VMCS_ENUM_RSVD_10_63_SHIFT                       10
    12241224#define VMX_BF_VMCS_ENUM_RSVD_10_63_MASK                        UINT64_C(0xfffffffffffffc00)
     
    12351235#define VMX_BF_VMFUNC_EPTP_SWITCHING_SHIFT                      0
    12361236#define VMX_BF_VMFUNC_EPTP_SWITCHING_MASK                       UINT64_C(0x0000000000000001)
    1237 /** Bits 1:63 are reserved, RAZ. */
     1237/** Bits 1:63 are reserved and RAZ. */
    12381238#define VMX_BF_VMFUNC_RSVD_1_63_SHIFT                           1
    12391239#define VMX_BF_VMFUNC_RSVD_1_63_MASK                            UINT64_C(0xfffffffffffffffe)
     
    23532353AssertCompile(!(VMX_V_VMCS_REVISION_ID & RT_BIT(31)));
    23542354
     2355/** The size of the virtual VMCS region (we use the maximum allowed size to avoid
     2356 *  complications when teleporation may be implemented). */
     2357#define VMX_V_VMCS_SIZE                                         X86_PAGE_4K_SIZE
     2358
    23552359/** The highest index value used for supported virtual VMCS field encoding. */
    23562360#define VMX_V_VMCS_MAX_INDEX                                    RT_BF_GET(VMX_VMCS32_PREEMPT_TIMER_VALUE, VMX_BF_VMCS_ENC_INDEX)
     2361
     2362/** Whether physical addresses of VMXON and VMCS related structures (I/O bitmap
     2363 *  etc.) are limited to 32-bits (4G). Always 0 on 64-bit CPUs. */
     2364#define VMX_V_VMCS_PHYSADDR_4G_LIMIT                            0
    23572365
    23582366/**
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