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

Table Of Contents
Vol. 3 23-17
VM EXITS
For VM exits due to attempts to effect a task switch via instruction execution.
These are VM exits that produce an exit reason indicating task switch and
either of the following:
An exit qualification indicating execution of CALL, IRET, or JMP
instruction.
An exit qualification indicating a task gate in the IDT and an IDT-vectoring
information field indicating that the task gate was encountered during
delivery of a software interrupt, privileged software exception, or
software exception.
For APIC-access VM exits resulting from linear accesses (see Section 21.2.1)
and encountered during delivery of a software interrupt, privileged software
exception, or software exception.
1
In all the above cases, this field receives the length in bytes (1–15) of the
instruction (including any instruction prefixes) whose execution led to the
VM exit (see the next paragraph for one exception).
The cases of VM exits encountered during delivery of a software interrupt,
privileged software exception, or software exception include those encountered
during delivery of events injected as part of VM entry (see Section 22.5.1.2). If
the original event was injected as part of VM entry, this field receives the value of
the VM-entry instruction length.
All VM exits other than those listed in the above items leave this field undefined.
VM-exit instruction information. For VM exits due to attempts to execute
INS, INVEPT, INVVPID, LIDT, LGDT, LLDT, LTR, OUTS, SIDT, SGDT, SLDT, STR,
VMCLEAR, VMPTRLD, VMPTRST, VMREAD, VMWRITE, or VMXON, this field
receives information about the instruction that caused the VM exit. The format of
the field depends on the identity of the instruction causing the VM exit:
For VM exits due to attempts to execute INS or OUTS, the field has the format
is given in Table 23-8.
2
1. The VM-exit instruction-length field is not defined following APIC-access VM exits resulting from
physical accesses (see Section 21.2.3) even if encountered during delivery of a software inter-
rupt, privileged software exception, or software exception.
Table 23-8. Format of the VM-Exit Instruction-Information Field as Used for INS and
OUTS
Bit Position(s) Content
6:0 Undefined.
2. Note that the format of the field was undefined for these VM exits on the first processors to
support the virtual-machine extensions. Software can determine whether the format specified
in Table 23-8 is used by consulting the VMX capability MSR IA32_VMX_BASIC (see Appendix
G.1).