2:332
Volume 2, Part 1: Processor Abstraction Layer
interruptions except the Virtualization vector. Virtualization vector will be delivered as
virtualization intercept in the per-virtual-processor host IVT. See
Intercepts in Virtual Environment” on page 2:332
for details on PAL intercepts.
In the virtual environment, the IVA (CR2) control register will be set by PAL
virtualization-related procedures and services as summarized in
After successful execution of PAL_VP_RESTORE procedure or PAL_VPS_RESTORE
service, the IVA control register on the logical processor is set to point to the
per-virtual-processor host IVT. After successful completion of PAL_VP_RESTORE
procedure, the VMM must not change the IVA control register on the logical processor
until after the next invocation of PAL_VP_SAVE or PAL_VPS_SAVE.
On IVA-based interruptions when a virtual processor is running (after
PAL_VPS_RESUME_NORMAL or PAL_VPS_RESUME_HANDLER), the IVA control register
on the logical processor is unchanged and will continue to point to the
per-virtual-processor host IVT. On resume execution to the same virtual processor
through PAL_VPS_RESUME_NORMAL or PAL_VPS_RESUME_HANDLER PAL services, the
VMM must ensure the IVA control register on the logical processor is set to point to the
per-virtual-processor host IVT at the time of interruption.
1
11.7.3
PAL Intercepts in Virtual Environment
When the IVA control register on the logical processor is set to point to the
per-virtual-processor host IVT, virtualization intercepts will be raised at the
Virtualization vector or at an optional virtualization intercept handler specified by the
VMM. By default, virtualization intercepts are delivered to the Virtualization vector of
the IVT specified by the VMM during PAL_VP_CREATE / PAL_VP_REGISTER. If the VMM
specified the optional virtualization intercept handler, all virtualization intercepts are
delivered to that handler (instead of the Virtualization vector.)
Table 11-21. IVA Settings after PAL Virtualization-related Procedures and
Services
PAL
Virtualization-related
Procedure / Service
Description
PAL_VP_CREATE
These procedures do not change the IVA control register.
PAL_VP_ENV_INFO
PAL_VP_EXIT_ENV
This procedure sets the IVA control register to point to the IVT specified by the caller.
PAL_VM_INIT_ENV
These procedures do not change the IVA control register.
PAL_VP_REGISTER
PAL_VP_RESTORE /
PAL_VPS_RESTORE
This procedure / service sets the IVA control register to point to the
per-virtual-processor host IVT.
PAL_VP_SAVE /
PAL_VPS_SAVE
This procedure / service does not change the IVA control register.
PAL_VP_TERMINATE This procedure sets the IVA control register to point to the IVT specified by the caller.
1.
In other words, the VMM is allowed to change to another IVT after IVA-based interruptions happen-
ing during virtual processor execution. The VMM must ensure the per-virtual processor IVT is
restored before resuming to the same virtual processor through PAL_VPS_RESUME_NORMAL or
PAL_VPS_RESUME_HANDLER.
Summary of Contents for ITANIUM ARCHITECTURE - SOFTWARE DEVELOPERS VOLUME 3 REV 2.3
Page 1: ......
Page 11: ...x Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 13: ...1 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 33: ...1 22 Volume 1 Part 1 Introduction to the Intel Itanium Architecture ...
Page 57: ...1 46 Volume 1 Part 1 Execution Environment ...
Page 147: ...1 136 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 149: ...1 138 Volume 1 Part 2 About the Optimization Guide ...
Page 191: ...1 180 Volume 1 Part 2 Predication Control Flow and Instruction Stream ...
Page 230: ......
Page 248: ...236 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 250: ...2 2 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 264: ...2 16 Volume 2 Part 1 Intel Itanium System Environment ...
Page 380: ...2 132 Volume 2 Part 1 Interruptions ...
Page 398: ...2 150 Volume 2 Part 1 Register Stack Engine ...
Page 486: ...2 238 Volume 2 Part 1 IA 32 Interruption Vector Descriptions ...
Page 750: ...2 502 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 754: ...2 506 Volume 2 Part 2 About the System Programmer s Guide ...
Page 796: ...2 548 Volume 2 Part 2 Interruptions and Serialization ...
Page 808: ...2 560 Volume 2 Part 2 Context Management ...
Page 842: ...2 594 Volume 2 Part 2 Floating point System Software ...
Page 850: ...2 602 Volume 2 Part 2 IA 32 Application Support ...
Page 862: ...2 614 Volume 2 Part 2 External Interrupt Architecture ...
Page 870: ...2 622 Volume 2 Part 2 Performance Monitoring Support ...
Page 891: ......
Page 1099: ...3 200 Volume 3 Instruction Reference padd Interruptions Illegal Operation fault ...
Page 1295: ...3 396 Volume 3 Resource and Dependency Semantics ...
Page 1296: ......
Page 1302: ...402 Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1494: ...4 192 Volume 4 Base IA 32 Instruction Reference FWAIT Wait See entry for WAIT ...
Page 1647: ...Volume 4 Base IA 32 Instruction Reference 4 345 ROL ROR Rotate See entry for RCL RCR ROL ROR ...
Page 1884: ...4 582 Volume 4 IA 32 SSE Instruction Reference ...
Page 1885: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 Index ...
Page 1886: ...Index Intel Itanium Architecture Software Developer s Manual Rev 2 3 ...
Page 1898: ...INDEX Index 12 Index for Volumes 1 2 3 and 4 ...