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

Table Of Contents
Vol. 3 25-31
SYSTEM MANAGEMENT
If the executive-VMCS pointer field does not contain the VMXON pointer (the
VM entry enters VMX non-root operation), the checks are performed on the
VM-execution control fields in the executive VMCS (the VMCS referenced by the
executive-VMCS pointer field in the current VMCS). These checks are performed
after checking the executive-VMCS pointer field itself (for proper alignment).
Other VM entries ensure that, if “activate VMX-preemption timer” VM-execution
control is 0, the “save VMX-preemption timer value” VM-exit control is also 0. This
check is not performed by VM entries that return from SMM.
25.15.4.3 Checks on VM-Entry Control Fields
VM entries that return from SMM differ from other VM entries with regard to the
checks performed on the VM-entry control fields specified in Section 22.2.1.3.
Specifically, if the executive-VMCS pointer field contains the VMXON pointer (the
VM entry remains in VMX root operation), the following must not all hold for the
VM-entry interruption-information field:
the valid bit (bit 31) in the VM-entry interruption-information field is 1
the interruption type (bits 10:8) is not 7 (other event); and
the vector (bits 7:0) is not 0 (pending MTF VM exit).
25.15.4.4 Checks on Guest Non-Register State
For VM entries that return from SMM, the activity-state field must not indicate the
wait-for-SIPI state if the executive-VMCS pointer field contains the VMXON pointer
(the VM entry is to VMX root operation).
Section 22.3.1.5 includes the following check on the interruptibility-state field: bit 3
(blocking by NMI) must be 0 if the “virtual NMIs” VM-execution control is 1, the valid
bit (bit 31) in the VM-entry interruption-information field is 1, and the interruption
type (bits 10:8) in that field has value 2 (indicating NMI). VM entries that return from
SMM modify this check based on whether the executive-VMCS pointer field contains
the VMXON pointer:
1
If the executive-VMCS pointer field contains the VMXON pointer (the VM entry
remains in VMX root operation), this check is not performed at all.
If the executive-VMCS pointer field does not contain the VMXON pointer (the
VM entry enters VMX non-root operation), this check is performed based on the
setting of the “virtual NMIs” VM-execution control in the executive VMCS (the
VMCS referenced by the executive-VMCS pointer field in the current VMCS).
1. An SMM monitor can determine the VMXON pointer by reading the executive-VMCS pointer field
in the current VMCS after the SMM VM exit that activates the dual-monitor treatment.