Intel 64 and IA-32 Architectures Software Developers Manual Volume 3B, System Programming Guide Part 2

Table Of Contents
20-20 Vol. 3
VIRTUAL-MACHINE CONTROL STRUCTURES
All other bits in this field are reserved, some to 0 and some to 1. Software should
consult the VMX capability MSRs IA32_VMX_EXIT_CTLS and
IA32_VMX_TRUE_EXIT_CTLS (see Appendix G.4) to determine how it should set the
reserved bits. Failure to set reserved bits properly causes subsequent VM entries to
fail (see Section 22.2).
Note that the first processors to support the virtual-machine extensions supported
only the 1-settings of bits 0–8, 10, 11, 13, 14, 16, and 17. The VMX capability MSR
IA32_VMX_EXIT_CTLS always reports that these bits must be 1. Logical processors
that support the 0-settings of any of these bits will support the VMX capability MSR
IA32_VMX_TRUE_EXIT_CTLS MSR, and software should consult this MSR to discover
support for the 0-settings of these bits. Software that is not aware of the functionality
of any one of these bits should set that bit to 1.
15 Acknowledge
interrupt on exit
This control affects VM exits due to external interrupts:
If such a VM exit occurs and this control is 1, the logical
processor acknowledges the interrupt controller,
acquiring the interrupt’s vector. The vector is stored in
the VM-exit interruption-information field, which is
marked valid.
If such a VM exit occurs and this control is 0, the
interrupt is not acknowledged and the VM-exit
interruption-information field is marked invalid.
18 Save IA32_PAT This control determines whether the IA32_PAT MSR is
saved on VM exit.
19 Load IA32_PAT This control determines whether the IA32_PAT MSR is
loaded on VM exit.
20 Save IA32_EFER This control determines whether the IA32_EFER MSR is
saved on VM exit.
21 Load IA32_EFER This control determines whether the IA32_EFER MSR is
loaded on VM exit.
22 Save VMX-
preemption timer
value
This control determines whether the value of the VMX-
preemption timer is saved on VM exit.
NOTES:
1. Since Intel 64 architecture specifies that IA32_EFER.LMA is always set to the logical-AND of
CR0.PG and IA32_EFER.LME, and since CR0.PG is always 1 in VMX operation, IA32_EFER.LMA is
always identical to IA32_EFER.LME in VMX operation.
Table 20-9. Definitions of VM-Exit Controls (Contd.)
Bit Position(s) Name Description