background image

Vol. 3C 29-11

APIC VIRTUALIZATION AND VIRTUAL INTERRUPTS

access’s linear address. Section 29.4.6.1 discusses the treatment of guest-physical accesses to the APIC-
access page.

•

An access is called a physical access if (1) either (a) the “enable EPT” VM-execution control is 0; or (b) the 
access’s physical address is not the result of a translation through the EPT paging structures; and (2) either 
(a) the access is not generated by a linear address; or (b) the access’s physical address is not the translation 
of its linear address. Section 29.4.6.2 discusses the treatment of physical accesses to the APIC-access page.

29.4.6.1   Guest-Physical Accesses to the APIC-Access Page

Guest-physical accesses include the following when guest-physical addresses are being translated using EPT:

•

Reads from the guest paging structures when translating a linear address (such an access uses a guest-
physical address that is not the translation of that linear address).

•

Loads of the page-directory-pointer-table entries by MOV to CR when the logical processor is using (or that 
causes the logical processor to use) PAE paging (see Section 4.4).

•

Updates to the accessed and dirty flags in the guest paging structures when using a linear address (such an 
access uses a guest-physical address that is not the translation of that linear address).

Every guest-physical access to an address on the APIC-access page causes an APIC-access VM exit. Such accesses 
are never virtualized regardless of the page offset.
The following items specify the priority relative to other events of APIC-access VM exits caused by guest-physical 
accesses to the APIC-access page.

•

The priority of an APIC-access VM exit caused by a guest-physical access to memory is below that of any EPT 
violation that that access may incur. That is, a guest-physical access does not cause an APIC-access VM exit if 
it would cause an EPT violation.

•

With respect to all other events, any APIC-access VM exit caused by a guest-physical access has the same 
priority as any EPT violation that the guest-physical access could cause.

29.4.6.2   Physical Accesses to the APIC-Access Page

Physical accesses include the following:

•

If the “enable EPT” VM-execution control is 0:
— Reads from the paging structures when translating a linear address.
— Loads of the page-directory-pointer-table entries by MOV to CR when the logical processor is using (or that 

causes the logical processor to use) PAE paging (see Section 4.4).

— Updates to the accessed and dirty flags in the paging structures.

•

If the “enable EPT” VM-execution control is 1, accesses to the EPT paging structures (including updates to the 
accessed and dirty flags for EPT).

•

Any of the following accesses made by the processor to support VMX non-root operation:
— Accesses to the VMCS region.
— Accesses to data structures referenced (directly or indirectly) by physical addresses in VM-execution 

control fields in the VMCS. These include the I/O bitmaps, the MSR bitmaps, and the virtual-APIC page.

•

Accesses that effect transitions into and out of SMM.

13

 These include the following:

— Accesses to SMRAM during SMI delivery and during execution of RSM.
— Accesses during SMM VM exits (including accesses to MSEG) and during VM entries that return from SMM.

12. “Enable EPT” is a secondary processor-based VM-execution control. If bit 31 of the primary processor-based VM-execution controls 

is 0, VMX non-root operation functions as if the “enable EPT” VM-execution control were 0. See Section 24.6.2.

13. Technically, these accesses do not occur in VMX non-root operation. They are included here for clarity.