VirtualBox

Changeset 73286 in vbox


Ignore:
Timestamp:
Jul 21, 2018 4:50:20 AM (7 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
123893
Message:

VMM: hex digits nits.

Location:
trunk/include/VBox/vmm
Files:
2 edited

Legend:

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

    r72744 r73286  
    8080# define SVM_EXIT_READ_CR8               0x8
    8181# define SVM_EXIT_READ_CR9               0x9
    82 # define SVM_EXIT_READ_CR10              0xA
    83 # define SVM_EXIT_READ_CR11              0xB
    84 # define SVM_EXIT_READ_CR12              0xC
    85 # define SVM_EXIT_READ_CR13              0xD
    86 # define SVM_EXIT_READ_CR14              0xE
    87 # define SVM_EXIT_READ_CR15              0xF
     82# define SVM_EXIT_READ_CR10              0xa
     83# define SVM_EXIT_READ_CR11              0xb
     84# define SVM_EXIT_READ_CR12              0xc
     85# define SVM_EXIT_READ_CR13              0xd
     86# define SVM_EXIT_READ_CR14              0xe
     87# define SVM_EXIT_READ_CR15              0xf
    8888/** Writes to CR0-CR15. */
    8989# define SVM_EXIT_WRITE_CR0              0x10
     
    9797# define SVM_EXIT_WRITE_CR8              0x18
    9898# define SVM_EXIT_WRITE_CR9              0x19
    99 # define SVM_EXIT_WRITE_CR10             0x1A
    100 # define SVM_EXIT_WRITE_CR11             0x1B
    101 # define SVM_EXIT_WRITE_CR12             0x1C
    102 # define SVM_EXIT_WRITE_CR13             0x1D
    103 # define SVM_EXIT_WRITE_CR14             0x1E
    104 # define SVM_EXIT_WRITE_CR15             0x1F
     99# define SVM_EXIT_WRITE_CR10             0x1a
     100# define SVM_EXIT_WRITE_CR11             0x1b
     101# define SVM_EXIT_WRITE_CR12             0x1c
     102# define SVM_EXIT_WRITE_CR13             0x1d
     103# define SVM_EXIT_WRITE_CR14             0x1e
     104# define SVM_EXIT_WRITE_CR15             0x1f
    105105/** Read from DR0-DR15. */
    106106# define SVM_EXIT_READ_DR0               0x20
     
    114114# define SVM_EXIT_READ_DR8               0x28
    115115# define SVM_EXIT_READ_DR9               0x29
    116 # define SVM_EXIT_READ_DR10              0x2A
    117 # define SVM_EXIT_READ_DR11              0x2B
    118 # define SVM_EXIT_READ_DR12              0x2C
    119 # define SVM_EXIT_READ_DR13              0x2D
    120 # define SVM_EXIT_READ_DR14              0x2E
    121 # define SVM_EXIT_READ_DR15              0x2F
     116# define SVM_EXIT_READ_DR10              0x2a
     117# define SVM_EXIT_READ_DR11              0x2b
     118# define SVM_EXIT_READ_DR12              0x2c
     119# define SVM_EXIT_READ_DR13              0x2d
     120# define SVM_EXIT_READ_DR14              0x2e
     121# define SVM_EXIT_READ_DR15              0x2f
    122122/** Writes to DR0-DR15. */
    123123# define SVM_EXIT_WRITE_DR0              0x30
     
    131131# define SVM_EXIT_WRITE_DR8              0x38
    132132# define SVM_EXIT_WRITE_DR9              0x39
    133 # define SVM_EXIT_WRITE_DR10             0x3A
    134 # define SVM_EXIT_WRITE_DR11             0x3B
    135 # define SVM_EXIT_WRITE_DR12             0x3C
    136 # define SVM_EXIT_WRITE_DR13             0x3D
    137 # define SVM_EXIT_WRITE_DR14             0x3E
    138 # define SVM_EXIT_WRITE_DR15             0x3F
     133# define SVM_EXIT_WRITE_DR10             0x3a
     134# define SVM_EXIT_WRITE_DR11             0x3b
     135# define SVM_EXIT_WRITE_DR12             0x3c
     136# define SVM_EXIT_WRITE_DR13             0x3d
     137# define SVM_EXIT_WRITE_DR14             0x3e
     138# define SVM_EXIT_WRITE_DR15             0x3f
    139139/* Exception 0-31. */
    140140# define SVM_EXIT_XCPT_0                 0x40
     
    148148# define SVM_EXIT_XCPT_8                 0x48
    149149# define SVM_EXIT_XCPT_9                 0x49
    150 # define SVM_EXIT_XCPT_10                0x4A
    151 # define SVM_EXIT_XCPT_11                0x4B
    152 # define SVM_EXIT_XCPT_12                0x4C
    153 # define SVM_EXIT_XCPT_13                0x4D
    154 # define SVM_EXIT_XCPT_14                0x4E
    155 # define SVM_EXIT_XCPT_15                0x4F
     150# define SVM_EXIT_XCPT_10                0x4a
     151# define SVM_EXIT_XCPT_11                0x4b
     152# define SVM_EXIT_XCPT_12                0x4c
     153# define SVM_EXIT_XCPT_13                0x4d
     154# define SVM_EXIT_XCPT_14                0x4e
     155# define SVM_EXIT_XCPT_15                0x4f
    156156# define SVM_EXIT_XCPT_16                0x50
    157157# define SVM_EXIT_XCPT_17                0x51
     
    164164# define SVM_EXIT_XCPT_24                0x58
    165165# define SVM_EXIT_XCPT_25                0x59
    166 # define SVM_EXIT_XCPT_26                0x5A
    167 # define SVM_EXIT_XCPT_27                0x5B
    168 # define SVM_EXIT_XCPT_28                0x5C
    169 # define SVM_EXIT_XCPT_29                0x5D
    170 # define SVM_EXIT_XCPT_30                0x5E
    171 # define SVM_EXIT_XCPT_31                0x5F
     166# define SVM_EXIT_XCPT_26                0x5a
     167# define SVM_EXIT_XCPT_27                0x5b
     168# define SVM_EXIT_XCPT_28                0x5c
     169# define SVM_EXIT_XCPT_29                0x5d
     170# define SVM_EXIT_XCPT_30                0x5e
     171# define SVM_EXIT_XCPT_31                0x5f
    172172/* Exception (more readable) */
    173173# define SVM_EXIT_XCPT_DE                SVM_EXIT_XCPT_0
     
    213213# define SVM_EXIT_TR_READ                0x69
    214214/** IDTR write. */
    215 # define SVM_EXIT_IDTR_WRITE             0x6A
     215# define SVM_EXIT_IDTR_WRITE             0x6a
    216216/** GDTR write. */
    217 # define SVM_EXIT_GDTR_WRITE             0x6B
     217# define SVM_EXIT_GDTR_WRITE             0x6b
    218218/** LDTR write. */
    219 # define SVM_EXIT_LDTR_WRITE             0x6C
     219# define SVM_EXIT_LDTR_WRITE             0x6c
    220220/** TR write. */
    221 # define SVM_EXIT_TR_WRITE               0x6D
     221# define SVM_EXIT_TR_WRITE               0x6d
    222222/** RDTSC instruction. */
    223 # define SVM_EXIT_RDTSC                  0x6E
     223# define SVM_EXIT_RDTSC                  0x6e
    224224/** RDPMC instruction. */
    225 # define SVM_EXIT_RDPMC                  0x6F
     225# define SVM_EXIT_RDPMC                  0x6f
    226226/** PUSHF instruction. */
    227227# define SVM_EXIT_PUSHF                  0x70
     
    245245# define SVM_EXIT_INVLPG                 0x79
    246246/** INVLPGA instruction. */
    247 # define SVM_EXIT_INVLPGA                0x7A
     247# define SVM_EXIT_INVLPGA                0x7a
    248248/** IN or OUT accessing protected port (the EXITINFO1 field provides more information). */
    249 # define SVM_EXIT_IOIO                   0x7B
     249# define SVM_EXIT_IOIO                   0x7b
    250250/** RDMSR or WRMSR access to protected MSR. */
    251 # define SVM_EXIT_MSR                    0x7C
     251# define SVM_EXIT_MSR                    0x7c
    252252/** task switch. */
    253 # define SVM_EXIT_TASK_SWITCH            0x7D
     253# define SVM_EXIT_TASK_SWITCH            0x7d
    254254/** FP legacy handling enabled, and processor is frozen in an x87/mmx instruction waiting for an interrupt. */
    255 # define SVM_EXIT_FERR_FREEZE            0x7E
     255# define SVM_EXIT_FERR_FREEZE            0x7e
    256256/** Shutdown. */
    257 # define SVM_EXIT_SHUTDOWN               0x7F
     257# define SVM_EXIT_SHUTDOWN               0x7f
    258258/** VMRUN instruction. */
    259259# define SVM_EXIT_VMRUN                  0x80
     
    277277# define SVM_EXIT_WBINVD                 0x89
    278278/** MONITOR instruction. */
    279 # define SVM_EXIT_MONITOR                0x8A
     279# define SVM_EXIT_MONITOR                0x8a
    280280/** MWAIT instruction. */
    281 # define SVM_EXIT_MWAIT                  0x8B
     281# define SVM_EXIT_MWAIT                  0x8b
    282282/** MWAIT instruction, when armed. */
    283 # define SVM_EXIT_MWAIT_ARMED            0x8C
     283# define SVM_EXIT_MWAIT_ARMED            0x8c
    284284/** XSETBV instruction. */
    285 # define SVM_EXIT_XSETBV                 0x8D
     285# define SVM_EXIT_XSETBV                 0x8d
    286286/** Nested paging: host-level page fault occurred (EXITINFO1 contains fault errorcode; EXITINFO2 contains the guest physical address causing the fault). */
    287287# define SVM_EXIT_NPF                    0x400
  • trunk/include/VBox/vmm/hm_vmx.h

    r73274 r73286  
    9999typedef VMXRESTOREHOST *PVMXRESTOREHOST;
    100100AssertCompileSize(X86XDTR64, 10);
    101 AssertCompileMemberOffset(VMXRESTOREHOST, HostGdtr.uAddr, 16);
     101AssertCompileMemberOffset(VMXRESTOREHOST, HostGdtr.uAddr,   16);
    102102AssertCompileMemberOffset(VMXRESTOREHOST, HostGdtrRw.uAddr, 32);
    103 AssertCompileMemberOffset(VMXRESTOREHOST, HostIdtr.uAddr, 48);
    104 AssertCompileMemberOffset(VMXRESTOREHOST, uHostFSBase,    56);
     103AssertCompileMemberOffset(VMXRESTOREHOST, HostIdtr.uAddr,   48);
     104AssertCompileMemberOffset(VMXRESTOREHOST, uHostFSBase,      56);
    105105AssertCompileSize(VMXRESTOREHOST, 72);
    106106AssertCompileSizeAlignment(VMXRESTOREHOST, 8);
     
    891891 */
    892892/** -1 Invalid exit code */
    893 #define VMX_EXIT_INVALID                                        -1
     893#define VMX_EXIT_INVALID                                      (-1)
    894894/** 0 Exception or non-maskable interrupt (NMI). */
    895895#define VMX_EXIT_XCPT_OR_NMI                                    0
     
    10911091 */
    10921092/** VMCS revision identifier used by the processor. */
    1093 #define MSR_IA32_VMX_BASIC_VMCS_ID(a)                      ((a) & 0x7FFFFFFF)
     1093#define MSR_IA32_VMX_BASIC_VMCS_ID(a)                      ((a) & 0x7fffffff)
    10941094/** Shift to get the VMCS size. */
    10951095#define MSR_IA32_VMX_BASIC_VMCS_SIZE_SHIFT                 32
    10961096/** VMCS size in bytes. */
    1097 #define MSR_IA32_VMX_BASIC_VMCS_SIZE(a)                    (((a) >> 32) & 0x1FFF)
     1097#define MSR_IA32_VMX_BASIC_VMCS_SIZE(a)                    (((a) >> 32) & 0x1fff)
    10981098/** Shift to get the width of physical addresses and associated memory regions. */
    10991099#define MSR_IA32_VMX_BASIC_VMCS_PHYS_WIDTH_SHIFT           48
     
    11081108#define MSR_IA32_VMX_BASIC_VMCS_MEM_TYPE_SHIFT             50
    11091109/** Memory type that must be used for the VMCS and associated memory regions. */
    1110 #define MSR_IA32_VMX_BASIC_VMCS_MEM_TYPE(a)                (((a) >> 50) & 0xF)
     1110#define MSR_IA32_VMX_BASIC_VMCS_MEM_TYPE(a)                (((a) >> 50) & 0xf)
    11111111/** Shift to get the additional VM-exit information for INS/OUTS. */
    11121112#define MSR_IA32_VMX_BASIC_VMCS_INS_OUTS_SHIFT             54
     
    11261126/** Relationship between the preemption timer and tsc; count down every time bit
    11271127 *  x of the tsc changes. */
    1128 #define MSR_IA32_VMX_MISC_PREEMPT_TSC_BIT(a)                    ((a) & 0x1F)
     1128#define MSR_IA32_VMX_MISC_PREEMPT_TSC_BIT(a)                    ((a) & 0x1f)
    11291129/** Whether VM-exit stores EFER.LMA into the "IA32e mode guest" field. */
    11301130#define MSR_IA32_VMX_MISC_STORE_EFERLMA_VMEXIT(a)               (((a) >> 5) & 1)
     
    11321132#define MSR_IA32_VMX_MISC_ACTIVITY_STATES(a)                    (((a) >> 6) & 0x7)
    11331133/** Number of CR3 target values supported by the processor. (0-256) */
    1134 #define MSR_IA32_VMX_MISC_CR3_TARGET(a)                         (((a) >> 16) & 0x1FF)
     1134#define MSR_IA32_VMX_MISC_CR3_TARGET(a)                         (((a) >> 16) & 0x1ff)
    11351135/** Maximum number of MSRs in the VMCS. (N+1)*512. */
    11361136#define MSR_IA32_VMX_MISC_MAX_MSR(a)                            (((((a) >> 25) & 0x7) + 1) * 512)
     
    11501150 */
    11511151/** Highest field index. */
    1152 #define MSR_IA32_VMX_VMCS_ENUM_HIGHEST_INDEX(a)                 (((a) >> 1) & 0x1FF)
     1152#define MSR_IA32_VMX_VMCS_ENUM_HIGHEST_INDEX(a)                 (((a) >> 1) & 0x1ff)
    11531153/** @} */
    11541154
     
    12021202#define VMX_VMCS16_GUEST_DS_SEL                                 0x806
    12031203#define VMX_VMCS16_GUEST_FS_SEL                                 0x808
    1204 #define VMX_VMCS16_GUEST_GS_SEL                                 0x80A
    1205 #define VMX_VMCS16_GUEST_LDTR_SEL                               0x80C
    1206 #define VMX_VMCS16_GUEST_TR_SEL                                 0x80E
     1204#define VMX_VMCS16_GUEST_GS_SEL                                 0x80a
     1205#define VMX_VMCS16_GUEST_LDTR_SEL                               0x80c
     1206#define VMX_VMCS16_GUEST_TR_SEL                                 0x80e
    12071207#define VMX_VMCS16_GUEST_INTR_STATUS                            0x810
    12081208/** @} */
     
    12111211 * @{
    12121212 */
    1213 #define VMX_VMCS16_HOST_ES_SEL                                  0xC00
    1214 #define VMX_VMCS16_HOST_CS_SEL                                  0xC02
    1215 #define VMX_VMCS16_HOST_SS_SEL                                  0xC04
    1216 #define VMX_VMCS16_HOST_DS_SEL                                  0xC06
    1217 #define VMX_VMCS16_HOST_FS_SEL                                  0xC08
    1218 #define VMX_VMCS16_HOST_GS_SEL                                  0xC0A
    1219 #define VMX_VMCS16_HOST_TR_SEL                                  0xC0C
     1213#define VMX_VMCS16_HOST_ES_SEL                                  0xc00
     1214#define VMX_VMCS16_HOST_CS_SEL                                  0xc02
     1215#define VMX_VMCS16_HOST_SS_SEL                                  0xc04
     1216#define VMX_VMCS16_HOST_DS_SEL                                  0xc06
     1217#define VMX_VMCS16_HOST_FS_SEL                                  0xc08
     1218#define VMX_VMCS16_HOST_GS_SEL                                  0xc0a
     1219#define VMX_VMCS16_HOST_TR_SEL                                  0xc0c
    12201220/** @}          */
    12211221
     
    12231223 * @{
    12241224 */
    1225 #define VMX_VMCS64_HOST_PAT_FULL                                0x2C00
    1226 #define VMX_VMCS64_HOST_PAT_HIGH                                0x2C01
    1227 #define VMX_VMCS64_HOST_EFER_FULL                               0x2C02
    1228 #define VMX_VMCS64_HOST_EFER_HIGH                               0x2C03
    1229 #define VMX_VMCS64_HOST_PERF_GLOBAL_CTRL_FULL                   0x2C04      /**< MSR IA32_PERF_GLOBAL_CTRL */
    1230 #define VMX_VMCS64_HOST_PERF_GLOBAL_CTRL_HIGH                   0x2C05      /**< MSR IA32_PERF_GLOBAL_CTRL */
     1225#define VMX_VMCS64_HOST_PAT_FULL                                0x2c00
     1226#define VMX_VMCS64_HOST_PAT_HIGH                                0x2c01
     1227#define VMX_VMCS64_HOST_EFER_FULL                               0x2c02
     1228#define VMX_VMCS64_HOST_EFER_HIGH                               0x2c03
     1229#define VMX_VMCS64_HOST_PERF_GLOBAL_CTRL_FULL                   0x2c04      /**< MSR IA32_PERF_GLOBAL_CTRL */
     1230#define VMX_VMCS64_HOST_PERF_GLOBAL_CTRL_HIGH                   0x2c05      /**< MSR IA32_PERF_GLOBAL_CTRL */
    12311231/** @}          */
    12321232
     
    12451245#define VMX_VMCS64_CTRL_EXIT_MSR_LOAD_FULL                      0x2008
    12461246#define VMX_VMCS64_CTRL_EXIT_MSR_LOAD_HIGH                      0x2009
    1247 #define VMX_VMCS64_CTRL_ENTRY_MSR_LOAD_FULL                     0x200A
    1248 #define VMX_VMCS64_CTRL_ENTRY_MSR_LOAD_HIGH                     0x200B
    1249 #define VMX_VMCS64_CTRL_EXEC_VMCS_PTR_FULL                      0x200C
    1250 #define VMX_VMCS64_CTRL_EXEC_VMCS_PTR_HIGH                      0x200D
     1247#define VMX_VMCS64_CTRL_ENTRY_MSR_LOAD_FULL                     0x200a
     1248#define VMX_VMCS64_CTRL_ENTRY_MSR_LOAD_HIGH                     0x200b
     1249#define VMX_VMCS64_CTRL_EXEC_VMCS_PTR_FULL                      0x200c
     1250#define VMX_VMCS64_CTRL_EXEC_VMCS_PTR_HIGH                      0x200d
    12511251#define VMX_VMCS64_CTRL_TSC_OFFSET_FULL                         0x2010
    12521252#define VMX_VMCS64_CTRL_TSC_OFFSET_HIGH                         0x2011
     
    12591259#define VMX_VMCS64_CTRL_VMFUNC_CTRLS_FULL                       0x2018
    12601260#define VMX_VMCS64_CTRL_VMFUNC_CTRLS_HIGH                       0x2019
    1261 #define VMX_VMCS64_CTRL_EPTP_FULL                               0x201A
    1262 #define VMX_VMCS64_CTRL_EPTP_HIGH                               0x201B
    1263 #define VMX_VMCS64_CTRL_EOI_BITMAP_0_FULL                       0x201C
    1264 #define VMX_VMCS64_CTRL_EOI_BITMAP_0_HIGH                       0x201D
    1265 #define VMX_VMCS64_CTRL_EOI_BITMAP_1_FULL                       0x201E
    1266 #define VMX_VMCS64_CTRL_EOI_BITMAP_1_HIGH                       0x201F
     1261#define VMX_VMCS64_CTRL_EPTP_FULL                               0x201a
     1262#define VMX_VMCS64_CTRL_EPTP_HIGH                               0x201b
     1263#define VMX_VMCS64_CTRL_EOI_BITMAP_0_FULL                       0x201c
     1264#define VMX_VMCS64_CTRL_EOI_BITMAP_0_HIGH                       0x201d
     1265#define VMX_VMCS64_CTRL_EOI_BITMAP_1_FULL                       0x201e
     1266#define VMX_VMCS64_CTRL_EOI_BITMAP_1_HIGH                       0x201f
    12671267#define VMX_VMCS64_CTRL_EOI_BITMAP_2_FULL                       0x2020
    12681268#define VMX_VMCS64_CTRL_EOI_BITMAP_2_HIGH                       0x2021
     
    12751275#define VMX_VMCS64_CTRL_VMWRITE_BITMAP_FULL                     0x2028
    12761276#define VMX_VMCS64_CTRL_VMWRITE_BITMAP_HIGH                     0x2029
    1277 #define VMX_VMCS64_CTRL_VIRTXCPT_INFO_ADDR_FULL                 0x202A
    1278 #define VMX_VMCS64_CTRL_VIRTXCPT_INFO_ADDR_HIGH                 0x202B
    1279 #define VMX_VMCS64_CTRL_XSS_EXITING_BITMAP_FULL                 0x202C
    1280 #define VMX_VMCS64_CTRL_XSS_EXITING_BITMAP_HIGH                 0x202D
     1277#define VMX_VMCS64_CTRL_VIRTXCPT_INFO_ADDR_FULL                 0x202a
     1278#define VMX_VMCS64_CTRL_VIRTXCPT_INFO_ADDR_HIGH                 0x202b
     1279#define VMX_VMCS64_CTRL_XSS_EXITING_BITMAP_FULL                 0x202c
     1280#define VMX_VMCS64_CTRL_XSS_EXITING_BITMAP_HIGH                 0x202d
    12811281#define VMX_VMCS64_CTRL_TSC_MULTIPLIER_FULL                     0x2032
    12821282#define VMX_VMCS64_CTRL_TSC_MULTIPLIER_HIGH                     0x2033
     
    12991299#define VMX_VMCS64_GUEST_PERF_GLOBAL_CTRL_FULL                  0x2808      /**< MSR IA32_PERF_GLOBAL_CTRL */
    13001300#define VMX_VMCS64_GUEST_PERF_GLOBAL_CTRL_HIGH                  0x2809      /**< MSR IA32_PERF_GLOBAL_CTRL */
    1301 #define VMX_VMCS64_GUEST_PDPTE0_FULL                            0x280A
    1302 #define VMX_VMCS64_GUEST_PDPTE0_HIGH                            0x280B
    1303 #define VMX_VMCS64_GUEST_PDPTE1_FULL                            0x280C
    1304 #define VMX_VMCS64_GUEST_PDPTE1_HIGH                            0x280D
    1305 #define VMX_VMCS64_GUEST_PDPTE2_FULL                            0x280E
    1306 #define VMX_VMCS64_GUEST_PDPTE2_HIGH                            0x280F
     1301#define VMX_VMCS64_GUEST_PDPTE0_FULL                            0x280a
     1302#define VMX_VMCS64_GUEST_PDPTE0_HIGH                            0x280b
     1303#define VMX_VMCS64_GUEST_PDPTE1_FULL                            0x280c
     1304#define VMX_VMCS64_GUEST_PDPTE1_HIGH                            0x280d
     1305#define VMX_VMCS64_GUEST_PDPTE2_FULL                            0x280e
     1306#define VMX_VMCS64_GUEST_PDPTE2_HIGH                            0x280f
    13071307#define VMX_VMCS64_GUEST_PDPTE3_FULL                            0x2810
    13081308#define VMX_VMCS64_GUEST_PDPTE3_HIGH                            0x2811
     
    13181318#define VMX_VMCS32_CTRL_PAGEFAULT_ERROR_MASK                    0x4006
    13191319#define VMX_VMCS32_CTRL_PAGEFAULT_ERROR_MATCH                   0x4008
    1320 #define VMX_VMCS32_CTRL_CR3_TARGET_COUNT                        0x400A
    1321 #define VMX_VMCS32_CTRL_EXIT                                    0x400C
    1322 #define VMX_VMCS32_CTRL_EXIT_MSR_STORE_COUNT                    0x400E
     1320#define VMX_VMCS32_CTRL_CR3_TARGET_COUNT                        0x400a
     1321#define VMX_VMCS32_CTRL_EXIT                                    0x400c
     1322#define VMX_VMCS32_CTRL_EXIT_MSR_STORE_COUNT                    0x400e
    13231323#define VMX_VMCS32_CTRL_EXIT_MSR_LOAD_COUNT                     0x4010
    13241324#define VMX_VMCS32_CTRL_ENTRY                                   0x4012
     
    13261326#define VMX_VMCS32_CTRL_ENTRY_INTERRUPTION_INFO                 0x4016
    13271327#define VMX_VMCS32_CTRL_ENTRY_EXCEPTION_ERRCODE                 0x4018
    1328 #define VMX_VMCS32_CTRL_ENTRY_INSTR_LENGTH                      0x401A
    1329 #define VMX_VMCS32_CTRL_TPR_THRESHOLD                           0x401C
    1330 #define VMX_VMCS32_CTRL_PROC_EXEC2                              0x401E
     1328#define VMX_VMCS32_CTRL_ENTRY_INSTR_LENGTH                      0x401a
     1329#define VMX_VMCS32_CTRL_TPR_THRESHOLD                           0x401c
     1330#define VMX_VMCS32_CTRL_PROC_EXEC2                              0x401e
    13311331#define VMX_VMCS32_CTRL_PLE_GAP                                 0x4020
    13321332#define VMX_VMCS32_CTRL_PLE_WINDOW                              0x4022
     
    15151515#define VMX_VMCS32_RO_EXIT_INTERRUPTION_ERROR_CODE              0x4406
    15161516#define VMX_VMCS32_RO_IDT_VECTORING_INFO                        0x4408
    1517 #define VMX_VMCS32_RO_IDT_VECTORING_ERROR_CODE                  0x440A
    1518 #define VMX_VMCS32_RO_EXIT_INSTR_LENGTH                         0x440C
    1519 #define VMX_VMCS32_RO_EXIT_INSTR_INFO                           0x440E
     1517#define VMX_VMCS32_RO_IDT_VECTORING_ERROR_CODE                  0x440a
     1518#define VMX_VMCS32_RO_EXIT_INSTR_LENGTH                         0x440c
     1519#define VMX_VMCS32_RO_EXIT_INSTR_INFO                           0x440e
    15201520/** @} */
    15211521
     
    15241524 * @{
    15251525 */
    1526 #define VMX_EXIT_REASON_BASIC(a)                                ((a) & 0xFFFF)
     1526#define VMX_EXIT_REASON_BASIC(a)                                ((a) & 0xffff)
    15271527/** @} */
    15281528
     
    15401540 * @{
    15411541 */
    1542 #define VMX_EXIT_INTERRUPTION_INFO_VECTOR(a)                    ((a) & 0xFF)
     1542#define VMX_EXIT_INTERRUPTION_INFO_VECTOR(a)                    ((a) & 0xff)
    15431543#define VMX_EXIT_INTERRUPTION_INFO_TYPE_SHIFT                   8
    15441544#define VMX_EXIT_INTERRUPTION_INFO_TYPE(a)                      (((a) >> VMX_EXIT_INTERRUPTION_INFO_TYPE_SHIFT) & 7)
     
    15691569 * @{
    15701570 */
    1571 #define VMX_IDT_VECTORING_INFO_VECTOR(a)                        ((a) & 0xFF)
     1571#define VMX_IDT_VECTORING_INFO_VECTOR(a)                        ((a) & 0xff)
    15721572#define VMX_IDT_VECTORING_INFO_TYPE_SHIFT                       8
    15731573#define VMX_IDT_VECTORING_INFO_TYPE(a)                          (((a) >> VMX_IDT_VECTORING_INFO_TYPE_SHIFT) & 7)
     
    15991599#define VMX_VMCS32_GUEST_DS_LIMIT                               0x4806
    16001600#define VMX_VMCS32_GUEST_FS_LIMIT                               0x4808
    1601 #define VMX_VMCS32_GUEST_GS_LIMIT                               0x480A
    1602 #define VMX_VMCS32_GUEST_LDTR_LIMIT                             0x480C
    1603 #define VMX_VMCS32_GUEST_TR_LIMIT                               0x480E
     1601#define VMX_VMCS32_GUEST_GS_LIMIT                               0x480a
     1602#define VMX_VMCS32_GUEST_LDTR_LIMIT                             0x480c
     1603#define VMX_VMCS32_GUEST_TR_LIMIT                               0x480e
    16041604#define VMX_VMCS32_GUEST_GDTR_LIMIT                             0x4810
    16051605#define VMX_VMCS32_GUEST_IDTR_LIMIT                             0x4812
     
    16071607#define VMX_VMCS32_GUEST_CS_ACCESS_RIGHTS                       0x4816
    16081608#define VMX_VMCS32_GUEST_SS_ACCESS_RIGHTS                       0x4818
    1609 #define VMX_VMCS32_GUEST_DS_ACCESS_RIGHTS                       0x481A
    1610 #define VMX_VMCS32_GUEST_FS_ACCESS_RIGHTS                       0x481C
    1611 #define VMX_VMCS32_GUEST_GS_ACCESS_RIGHTS                       0x481E
     1609#define VMX_VMCS32_GUEST_DS_ACCESS_RIGHTS                       0x481a
     1610#define VMX_VMCS32_GUEST_FS_ACCESS_RIGHTS                       0x481c
     1611#define VMX_VMCS32_GUEST_GS_ACCESS_RIGHTS                       0x481e
    16121612#define VMX_VMCS32_GUEST_LDTR_ACCESS_RIGHTS                     0x4820
    16131613#define VMX_VMCS32_GUEST_TR_ACCESS_RIGHTS                       0x4822
    16141614#define VMX_VMCS32_GUEST_INTERRUPTIBILITY_STATE                 0x4824
    16151615#define VMX_VMCS32_GUEST_ACTIVITY_STATE                         0x4826
    1616 #define VMX_VMCS32_GUEST_SYSENTER_CS                            0x482A  /**< MSR IA32_SYSENTER_CS */
    1617 #define VMX_VMCS32_GUEST_PREEMPT_TIMER_VALUE                    0x482E
     1616#define VMX_VMCS32_GUEST_SYSENTER_CS                            0x482a  /**< MSR IA32_SYSENTER_CS */
     1617#define VMX_VMCS32_GUEST_PREEMPT_TIMER_VALUE                    0x482e
    16181618/** @} */
    16191619
     
    16581658#define VMX_VMCS_CTRL_CR4_READ_SHADOW                           0x6006
    16591659#define VMX_VMCS_CTRL_CR3_TARGET_VAL0                           0x6008
    1660 #define VMX_VMCS_CTRL_CR3_TARGET_VAL1                           0x600A
    1661 #define VMX_VMCS_CTRL_CR3_TARGET_VAL2                           0x600C
    1662 #define VMX_VMCS_CTRL_CR3_TARGET_VAL31                          0x600E
     1660#define VMX_VMCS_CTRL_CR3_TARGET_VAL1                           0x600a
     1661#define VMX_VMCS_CTRL_CR3_TARGET_VAL2                           0x600c
     1662#define VMX_VMCS_CTRL_CR3_TARGET_VAL31                          0x600e
    16631663/** @} */
    16641664
     
    16721672#define VMX_VMCS_RO_IO_RDI                                      0x6406
    16731673#define VMX_VMCS_RO_IO_RIP                                      0x6408
    1674 #define VMX_VMCS_RO_EXIT_GUEST_LINEAR_ADDR                      0x640A
     1674#define VMX_VMCS_RO_EXIT_GUEST_LINEAR_ADDR                      0x640a
    16751675/** @} */
    16761676
     
    16881688#define VMX_EXIT_QUAL_DRX_RES2(a)                               (((a) >> 5) & 7)
    16891689/** 8-11: General purpose register number. */
    1690 #define VMX_EXIT_QUAL_DRX_GENREG(a)                             (((a) >> 8) & 0xF)
     1690#define VMX_EXIT_QUAL_DRX_GENREG(a)                             (((a) >> 8) & 0xf)
    16911691/** Rest: reserved. */
    16921692/** @} */
     
    17051705 */
    17061706/** 0-3:   Control register number (0 for CLTS & LMSW) */
    1707 #define VMX_EXIT_QUAL_CRX_REGISTER(a)                  ((a) & 0xF)
     1707#define VMX_EXIT_QUAL_CRX_REGISTER(a)                  ((a) & 0xf)
    17081708/** 4-5:   Access type. */
    17091709#define VMX_EXIT_QUAL_CRX_ACCESS(a)                    (((a) >> 4) & 3)
     
    17131713#define VMX_EXIT_QUAL_CRX_RES1(a)                      (((a) >> 7) & 1)
    17141714/** 8-11:  General purpose register number (0 for CLTS & LMSW). */
    1715 #define VMX_EXIT_QUAL_CRX_GENREG(a)                    (((a) >> 8) & 0xF)
     1715#define VMX_EXIT_QUAL_CRX_GENREG(a)                    (((a) >> 8) & 0xf)
    17161716/** 12-15: Reserved; cleared to 0. */
    1717 #define VMX_EXIT_QUAL_CRX_RES2(a)                      (((a) >> 12) & 0xF)
     1717#define VMX_EXIT_QUAL_CRX_RES2(a)                      (((a) >> 12) & 0xf)
    17181718/** 16-31: LMSW source data (else 0). */
    1719 #define VMX_EXIT_QUAL_CRX_LMSW_DATA(a)                 (((a) >> 16) & 0xFFFF)
     1719#define VMX_EXIT_QUAL_CRX_LMSW_DATA(a)                 (((a) >> 16) & 0xffff)
    17201720/* Rest: reserved. */
    17211721/** @} */
     
    17351735 * @{
    17361736 */
    1737 #define VMX_EXIT_QUAL_TASK_SWITCH_SELECTOR(a)          ((a) & 0xFFFF)
     1737#define VMX_EXIT_QUAL_TASK_SWITCH_SELECTOR(a)          ((a) & 0xffff)
    17381738#define VMX_EXIT_QUAL_TASK_SWITCH_TYPE(a)              (((a) >> 30) & 0x3)
    17391739/** Task switch caused by a call instruction. */
     
    17871787#define VMX_EXIT_QUAL_IO_ENCODING(a)                   (((a) >> 6) & 1)
    17881788/** 16-31: IO Port (0-0xffff). */
    1789 #define VMX_EXIT_QUAL_IO_PORT(a)                       (((a) >> 16) & 0xFFFF)
     1789#define VMX_EXIT_QUAL_IO_PORT(a)                       (((a) >> 16) & 0xffff)
    17901790/* Rest reserved. */
    17911791/** @} */
     
    19561956#define VMX_VMCS_GUEST_ES_BASE                                  0x6806
    19571957#define VMX_VMCS_GUEST_CS_BASE                                  0x6808
    1958 #define VMX_VMCS_GUEST_SS_BASE                                  0x680A
    1959 #define VMX_VMCS_GUEST_DS_BASE                                  0x680C
    1960 #define VMX_VMCS_GUEST_FS_BASE                                  0x680E
     1958#define VMX_VMCS_GUEST_SS_BASE                                  0x680a
     1959#define VMX_VMCS_GUEST_DS_BASE                                  0x680c
     1960#define VMX_VMCS_GUEST_FS_BASE                                  0x680e
    19611961#define VMX_VMCS_GUEST_GS_BASE                                  0x6810
    19621962#define VMX_VMCS_GUEST_LDTR_BASE                                0x6812
     
    19641964#define VMX_VMCS_GUEST_GDTR_BASE                                0x6816
    19651965#define VMX_VMCS_GUEST_IDTR_BASE                                0x6818
    1966 #define VMX_VMCS_GUEST_DR7                                      0x681A
    1967 #define VMX_VMCS_GUEST_RSP                                      0x681C
    1968 #define VMX_VMCS_GUEST_RIP                                      0x681E
     1966#define VMX_VMCS_GUEST_DR7                                      0x681a
     1967#define VMX_VMCS_GUEST_RSP                                      0x681c
     1968#define VMX_VMCS_GUEST_RIP                                      0x681e
    19691969#define VMX_VMCS_GUEST_RFLAGS                                   0x6820
    19701970#define VMX_VMCS_GUEST_PENDING_DEBUG_EXCEPTIONS                 0x6822
     
    19961996 * @{
    19971997 */
    1998 #define VMX_VMCS_HOST_CR0                                       0x6C00
    1999 #define VMX_VMCS_HOST_CR3                                       0x6C02
    2000 #define VMX_VMCS_HOST_CR4                                       0x6C04
    2001 #define VMX_VMCS_HOST_FS_BASE                                   0x6C06
    2002 #define VMX_VMCS_HOST_GS_BASE                                   0x6C08
    2003 #define VMX_VMCS_HOST_TR_BASE                                   0x6C0A
    2004 #define VMX_VMCS_HOST_GDTR_BASE                                 0x6C0C
    2005 #define VMX_VMCS_HOST_IDTR_BASE                                 0x6C0E
    2006 #define VMX_VMCS_HOST_SYSENTER_ESP                              0x6C10
    2007 #define VMX_VMCS_HOST_SYSENTER_EIP                              0x6C12
    2008 #define VMX_VMCS_HOST_RSP                                       0x6C14
    2009 #define VMX_VMCS_HOST_RIP                                       0x6C16
     1998#define VMX_VMCS_HOST_CR0                                       0x6c00
     1999#define VMX_VMCS_HOST_CR3                                       0x6c02
     2000#define VMX_VMCS_HOST_CR4                                       0x6c04
     2001#define VMX_VMCS_HOST_FS_BASE                                   0x6c06
     2002#define VMX_VMCS_HOST_GS_BASE                                   0x6c08
     2003#define VMX_VMCS_HOST_TR_BASE                                   0x6c0a
     2004#define VMX_VMCS_HOST_GDTR_BASE                                 0x6c0c
     2005#define VMX_VMCS_HOST_IDTR_BASE                                 0x6c0e
     2006#define VMX_VMCS_HOST_SYSENTER_ESP                              0x6c10
     2007#define VMX_VMCS_HOST_SYSENTER_EIP                              0x6c12
     2008#define VMX_VMCS_HOST_RSP                                       0x6c14
     2009#define VMX_VMCS_HOST_RIP                                       0x6c16
    20102010/** @} */
    20112011
     
    20592059       "push     %3                                             \n\t"
    20602060       "push     %2                                             \n\t"
    2061        ".byte    0xF3, 0x0F, 0xC7, 0x34, 0x24  # VMXON [esp]    \n\t"
     2061       ".byte    0xf3, 0x0f, 0xc7, 0x34, 0x24  # VMXON [esp]    \n\t"
    20622062       "ja       2f                                             \n\t"
    20632063       "je       1f                                             \n\t"
     
    20882088        push    dword ptr [HCPhysVmxOn + 4]
    20892089        push    dword ptr [HCPhysVmxOn]
    2090         _emit   0xF3
    2091         _emit   0x0F
    2092         _emit   0xC7
     2090        _emit   0xf3
     2091        _emit   0x0f
     2092        _emit   0xc7
    20932093        _emit   0x34
    20942094        _emit   0x24     /* VMXON [esp] */
     
    21192119# if RT_INLINE_ASM_GNU_STYLE
    21202120    __asm__ __volatile__ (
    2121        ".byte 0x0F, 0x01, 0xC4  # VMXOFF                        \n\t"
     2121       ".byte 0x0f, 0x01, 0xc4  # VMXOFF                        \n\t"
    21222122       );
    21232123
     
    21282128    __asm
    21292129    {
    2130         _emit   0x0F
     2130        _emit   0x0f
    21312131        _emit   0x01
    2132         _emit   0xC4   /* VMXOFF */
     2132        _emit   0xc4   /* VMXOFF */
    21332133    }
    21342134# endif
     
    21532153       "push    %3                                              \n\t"
    21542154       "push    %2                                              \n\t"
    2155        ".byte   0x66, 0x0F, 0xC7, 0x34, 0x24  # VMCLEAR [esp]   \n\t"
     2155       ".byte   0x66, 0x0f, 0xc7, 0x34, 0x24  # VMCLEAR [esp]   \n\t"
    21562156       "jnc     1f                                              \n\t"
    21572157       "movl    $" RT_XSTR(VERR_VMX_INVALID_VMCS_PTR)", %0      \n\t"
     
    21792179        push    dword ptr [HCPhysVmcs]
    21802180        _emit   0x66
    2181         _emit   0x0F
    2182         _emit   0xC7
     2181        _emit   0x0f
     2182        _emit   0xc7
    21832183        _emit   0x34
    21842184        _emit   0x24     /* VMCLEAR [esp] */
     
    22102210       "push    %3                                              \n\t"
    22112211       "push    %2                                              \n\t"
    2212        ".byte   0x0F, 0xC7, 0x34, 0x24  # VMPTRLD [esp]         \n\t"
     2212       ".byte   0x0f, 0xc7, 0x34, 0x24  # VMPTRLD [esp]         \n\t"
    22132213       "jnc     1f                                              \n\t"
    22142214       "movl    $" RT_XSTR(VERR_VMX_INVALID_VMCS_PTR)", %0      \n\t"
     
    22342234        push    dword ptr [HCPhysVmcs + 4]
    22352235        push    dword ptr [HCPhysVmcs]
    2236         _emit   0x0F
    2237         _emit   0xC7
     2236        _emit   0x0f
     2237        _emit   0xc7
    22382238        _emit   0x34
    22392239        _emit   0x24     /* VMPTRLD [esp] */
     
    22822282    int rc = VINF_SUCCESS;
    22832283    __asm__ __volatile__ (
    2284        ".byte  0x0F, 0x79, 0xC2        # VMWRITE eax, edx       \n\t"
     2284       ".byte  0x0f, 0x79, 0xc2        # VMWRITE eax, edx       \n\t"
    22852285       "ja     2f                                               \n\t"
    22862286       "je     1f                                               \n\t"
     
    23092309        push   dword ptr [u32Val]
    23102310        mov    eax, [idxField]
    2311         _emit  0x0F
     2311        _emit  0x0f
    23122312        _emit  0x79
    23132313        _emit  0x04
     
    24112411    __asm__ __volatile__ (
    24122412       "movl   $" RT_XSTR(VINF_SUCCESS)", %0                     \n\t"
    2413        ".byte  0x0F, 0x78, 0xc2        # VMREAD eax, edx         \n\t"
     2413       ".byte  0x0f, 0x78, 0xc2        # VMREAD eax, edx         \n\t"
    24142414       "ja     2f                                                \n\t"
    24152415       "je     1f                                                \n\t"
     
    24462446        mov     dword ptr [esp], 0
    24472447        mov     eax, [idxField]
    2448         _emit   0x0F
     2448        _emit   0x0f
    24492449        _emit   0x78
    24502450        _emit   0x04
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