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

Table Of Contents
Vol. 3 20-13
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_PROCBASED_CTLS and
IA32_VMX_TRUE_PROCBASED_CTLS (see Appendix G.3.2) to determine how to set
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 1, 4–6, 8, 13–16, and 26. The VMX capability MSR
IA32_VMX_PROCBASED_CTLS will always report that these bits must be 1. Logical
processors that support the 0-settings of any of these bits will support the VMX capa-
bility MSR IA32_VMX_TRUE_PROCBASED_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.
Bit 31 of the primary processor-based VM-execution controls determines whether
the secondary processor-based VM-execution controls are used. If that bit is 0,
VM entry and VMX non-root operation function as if all the secondary processor-
based VM-execution controls were 0. Processors that support only the 0-setting of
bit 31 of the primary processor-based VM-execution controls do not support the
secondary processor-based VM-execution controls.
28 Use MSR bitmaps This control determines whether MSR bitmaps are used to
control execution of the RDMSR and WRMSR instructions (see
Section 20.6.9 and Section 21.1.3).
For this control, “0” means “do not use MSR bitmaps” and “1”
means “use MSR bitmaps.” If the MSR bitmaps are not used,
all executions of the RDMSR and WRMSR instructions cause
VM exits.
Not all processors support the 1-setting of this control.
Software may consult the VMX capability MSR
IA32_VMX_PROCBASED_CTLS (see Appendix G.3) to
determine whether that setting is supported.
29 MONITOR exiting This control determines whether executions of MONITOR
cause VM exits.
30 PAUSE exiting This control determines whether executions of PAUSE cause
VM exits.
31 Activate secondary
controls
This control determines whether the secondary processor-
based VM-execution controls are used. If this control is 0, the
logical processor operates as if all the secondary processor-
based VM-execution controls were also 0.
Table 20-6. Definitions of Primary Processor-Based VM-Execution Controls (Contd.)
Bit Position(s) Name Description