diff options
Diffstat (limited to 'arch/x86/include/asm/vmx.h')
-rw-r--r-- | arch/x86/include/asm/vmx.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/arch/x86/include/asm/vmx.h b/arch/x86/include/asm/vmx.h index e385df97bfdc..5c9dbadd364a 100644 --- a/arch/x86/include/asm/vmx.h +++ b/arch/x86/include/asm/vmx.h | |||
@@ -62,10 +62,12 @@ | |||
62 | #define EXIT_REASON_MCE_DURING_VMENTRY 41 | 62 | #define EXIT_REASON_MCE_DURING_VMENTRY 41 |
63 | #define EXIT_REASON_TPR_BELOW_THRESHOLD 43 | 63 | #define EXIT_REASON_TPR_BELOW_THRESHOLD 43 |
64 | #define EXIT_REASON_APIC_ACCESS 44 | 64 | #define EXIT_REASON_APIC_ACCESS 44 |
65 | #define EXIT_REASON_EOI_INDUCED 45 | ||
65 | #define EXIT_REASON_EPT_VIOLATION 48 | 66 | #define EXIT_REASON_EPT_VIOLATION 48 |
66 | #define EXIT_REASON_EPT_MISCONFIG 49 | 67 | #define EXIT_REASON_EPT_MISCONFIG 49 |
67 | #define EXIT_REASON_WBINVD 54 | 68 | #define EXIT_REASON_WBINVD 54 |
68 | #define EXIT_REASON_XSETBV 55 | 69 | #define EXIT_REASON_XSETBV 55 |
70 | #define EXIT_REASON_APIC_WRITE 56 | ||
69 | #define EXIT_REASON_INVPCID 58 | 71 | #define EXIT_REASON_INVPCID 58 |
70 | 72 | ||
71 | #define VMX_EXIT_REASONS \ | 73 | #define VMX_EXIT_REASONS \ |
@@ -103,7 +105,12 @@ | |||
103 | { EXIT_REASON_APIC_ACCESS, "APIC_ACCESS" }, \ | 105 | { EXIT_REASON_APIC_ACCESS, "APIC_ACCESS" }, \ |
104 | { EXIT_REASON_EPT_VIOLATION, "EPT_VIOLATION" }, \ | 106 | { EXIT_REASON_EPT_VIOLATION, "EPT_VIOLATION" }, \ |
105 | { EXIT_REASON_EPT_MISCONFIG, "EPT_MISCONFIG" }, \ | 107 | { EXIT_REASON_EPT_MISCONFIG, "EPT_MISCONFIG" }, \ |
106 | { EXIT_REASON_WBINVD, "WBINVD" } | 108 | { EXIT_REASON_WBINVD, "WBINVD" }, \ |
109 | { EXIT_REASON_APIC_WRITE, "APIC_WRITE" }, \ | ||
110 | { EXIT_REASON_EOI_INDUCED, "EOI_INDUCED" }, \ | ||
111 | { EXIT_REASON_INVALID_STATE, "INVALID_STATE" }, \ | ||
112 | { EXIT_REASON_INVD, "INVD" }, \ | ||
113 | { EXIT_REASON_INVPCID, "INVPCID" } | ||
107 | 114 | ||
108 | #ifdef __KERNEL__ | 115 | #ifdef __KERNEL__ |
109 | 116 | ||
@@ -138,9 +145,12 @@ | |||
138 | #define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001 | 145 | #define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES 0x00000001 |
139 | #define SECONDARY_EXEC_ENABLE_EPT 0x00000002 | 146 | #define SECONDARY_EXEC_ENABLE_EPT 0x00000002 |
140 | #define SECONDARY_EXEC_RDTSCP 0x00000008 | 147 | #define SECONDARY_EXEC_RDTSCP 0x00000008 |
148 | #define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE 0x00000010 | ||
141 | #define SECONDARY_EXEC_ENABLE_VPID 0x00000020 | 149 | #define SECONDARY_EXEC_ENABLE_VPID 0x00000020 |
142 | #define SECONDARY_EXEC_WBINVD_EXITING 0x00000040 | 150 | #define SECONDARY_EXEC_WBINVD_EXITING 0x00000040 |
143 | #define SECONDARY_EXEC_UNRESTRICTED_GUEST 0x00000080 | 151 | #define SECONDARY_EXEC_UNRESTRICTED_GUEST 0x00000080 |
152 | #define SECONDARY_EXEC_APIC_REGISTER_VIRT 0x00000100 | ||
153 | #define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY 0x00000200 | ||
144 | #define SECONDARY_EXEC_PAUSE_LOOP_EXITING 0x00000400 | 154 | #define SECONDARY_EXEC_PAUSE_LOOP_EXITING 0x00000400 |
145 | #define SECONDARY_EXEC_ENABLE_INVPCID 0x00001000 | 155 | #define SECONDARY_EXEC_ENABLE_INVPCID 0x00001000 |
146 | 156 | ||
@@ -178,6 +188,7 @@ enum vmcs_field { | |||
178 | GUEST_GS_SELECTOR = 0x0000080a, | 188 | GUEST_GS_SELECTOR = 0x0000080a, |
179 | GUEST_LDTR_SELECTOR = 0x0000080c, | 189 | GUEST_LDTR_SELECTOR = 0x0000080c, |
180 | GUEST_TR_SELECTOR = 0x0000080e, | 190 | GUEST_TR_SELECTOR = 0x0000080e, |
191 | GUEST_INTR_STATUS = 0x00000810, | ||
181 | HOST_ES_SELECTOR = 0x00000c00, | 192 | HOST_ES_SELECTOR = 0x00000c00, |
182 | HOST_CS_SELECTOR = 0x00000c02, | 193 | HOST_CS_SELECTOR = 0x00000c02, |
183 | HOST_SS_SELECTOR = 0x00000c04, | 194 | HOST_SS_SELECTOR = 0x00000c04, |
@@ -205,6 +216,14 @@ enum vmcs_field { | |||
205 | APIC_ACCESS_ADDR_HIGH = 0x00002015, | 216 | APIC_ACCESS_ADDR_HIGH = 0x00002015, |
206 | EPT_POINTER = 0x0000201a, | 217 | EPT_POINTER = 0x0000201a, |
207 | EPT_POINTER_HIGH = 0x0000201b, | 218 | EPT_POINTER_HIGH = 0x0000201b, |
219 | EOI_EXIT_BITMAP0 = 0x0000201c, | ||
220 | EOI_EXIT_BITMAP0_HIGH = 0x0000201d, | ||
221 | EOI_EXIT_BITMAP1 = 0x0000201e, | ||
222 | EOI_EXIT_BITMAP1_HIGH = 0x0000201f, | ||
223 | EOI_EXIT_BITMAP2 = 0x00002020, | ||
224 | EOI_EXIT_BITMAP2_HIGH = 0x00002021, | ||
225 | EOI_EXIT_BITMAP3 = 0x00002022, | ||
226 | EOI_EXIT_BITMAP3_HIGH = 0x00002023, | ||
208 | GUEST_PHYSICAL_ADDRESS = 0x00002400, | 227 | GUEST_PHYSICAL_ADDRESS = 0x00002400, |
209 | GUEST_PHYSICAL_ADDRESS_HIGH = 0x00002401, | 228 | GUEST_PHYSICAL_ADDRESS_HIGH = 0x00002401, |
210 | VMCS_LINK_POINTER = 0x00002800, | 229 | VMCS_LINK_POINTER = 0x00002800, |