Intel Virtualization Technology Roadmap and VT-D Support in Xen
Intel Virtualization Technology Roadmap and VT-D Support in Xen
Roadmap and
VT-d Support in Xen
Jun Nakajima
Intel Open Source Technology Center
Legal Disclaimer
y INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO
LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL
PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL’S TERMS
AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER,
AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF
INTEL® PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR
OTHER INTELLECTUAL PROPERTY RIGHT. INTEL PRODUCTS ARE NOT INTENDED FOR USE IN
MEDICAL, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS.
y Intel may make changes to specifications and product descriptions at any time, without notice.
y All products, dates, and figures specified are preliminary based on current expectations, and are subject to
change without notice.
y Intel, processors, chipsets, and desktop boards may contain design defects or errors known as errata, which
may cause the product to deviate from published specifications. Current characterized errata are available on
request.
y Intel and the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the
United States and other countries.
y *Other names and brands may be claimed as the property of others.
y Copyright © 2007 Intel Corporation.
Throughout this presentation:
VT-x refers to Intel® VT for IA-32 and Intel® 64
VT-i refers to the Intel® VT for IA-64, and
VT-d refers to Intel® VT for Directed I/O
2
Intel® VT Roadmap: Overview
Standards for I/O-device sharing:
Vector 3: PCI-SIG
• Natively sharable I/O devices
• Endpoint DMA-translation caching
I/O Focus
Software-only VMMs Simpler and more Improved CPU and I/O virtualization Performance
VMM • Binary translation Secure VMMs through and Functionality as VMMs exploit infrastructure
Software • Paravirtualization foundation of provided by VT-x, VT-i, VT-d
• Device Emulation virtualizable ISAs
Evolution
Past Today
No Hardware VMM software evolution over
Support
time with hardware support
3
New Feature Highlights
4
New Feature Highlights (cont.)
y Preemption Timer
– Allows VMM to bound guest-OS execution time
y Descriptor-table Exiting
– Enables VMM to protect IDT, GDT, etc. from attack in
guest OS
5
Future Extensions: VPIDs
6
Future Extensions: VPIDs
VPIDs: Details
EPT: Overview
CR3 EPT Base Pointer
8
Future Extensions: EPT
y Disallowed accesses
– Called EPT violations
– Cause VM exits
9
VT-d Overview
y VT-d provides infrastructure for I/O virtualization
– Defines architecture for DMA and interrupt remapping
– Common architecture across IA platforms
– Will be supported broadly across Intel® chipsets
CPU CPU
System Bus
North Bridge
DRAM
VT-d
Integrated PCIe* Root Ports
Devices
PCI Express
South PCI, LPC,
Bridge Legacy devices, …
11
DMA Remapping: Features
y Other Features
– H/W caching of frequently used remapping structures
– Support for PCIe* Address Translation Services (ATS)
– Improved RAS by reporting DMA faults to software
13
DMA Remapping: Page Walk
Requestor ID DMA Virtual Address
15 8 7 3 2 0 63 57 56 48 47 39 38 30 29 21 20 12 11 0
000000b 000000000b
Level-4 Level-3 Level-2 Level-1
Bus Device Func Page Offset
table offset table offset table offset table offset
Base
4KB Page
Level-4
Level-3
Example entry specifying Page Table
Page Table
Level-2
4-level page table Page Table
Level-1
Page Table
14
Interrupt Virtualization
15
Interrupt Remapping
y Interrupt request specify request & originator IDs
– Remap hardware transforms request to physical interrupt
16
VT-d Support in Xen
17
Current Status
y Sanity Checks
– Assigned PCIe E1000 add-on card to 32-bit FC5 on 64-bit
Xen.
– "scp" test shows near-native performance on the test
machine (e.g 200+Mbps).
18
19