[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [v3 00/15] Add VT-d Posted-Interrupts support
VT-d Posted-Interrupts is an enhancement to CPU side Posted-Interrupt. With VT-d Posted-Interrupts enabled, external interrupts from direct-assigned devices can be delivered to guests without VMM intervention when guest is running in non-root mode. You can find the VT-d Posted-Interrtups Spec. in the following URL: http://www.intel.com/content/www/us/en/intelligent-systems/intel-technology/vt-directed-io-spec.html This patch set follow the following design: http://article.gmane.org/gmane.comp.emulators.xen.devel/236476 v3: Changelogs are in the head of each patch. v2: 1. Add the design doc. 2. Coding style fix. 3. Add some comments for struct pi_desc. 4. Extend 'struct iremap_entry' to a more common format. 5. Delete the atomic helper functions for pi descriptor manipulation. 6. Add the new command line in docs/misc/xen-command-line.markdown. 7. Use macros to replace some magic numbers. Feng Wu (15): Vt-d Posted-intterrupt (PI) design Add helper macro for X86_FEATURE_CX16 feature detection Add cmpxchg16b support for x86-64 iommu: Add iommu_intpost to control VT-d Posted-Interrupts feature vt-d: VT-d Posted-Interrupts feature detection vmx: Extend struct pi_desc to support VT-d Posted-Interrupts vmx: Initialize VT-d Posted-Interrupts Descriptor Suppress posting interrupts when 'SN' is set vt-d: Extend struct iremap_entry to support VT-d Posted-Interrupts vt-d: Add API to update IRTE when VT-d PI is used Update IRTE according to guest interrupt config changes vmx: posted-interrupt handling when vCPU is blocked vmx: Properly handle notification event when vCPU is running Update Posted-Interrupts Descriptor during vCPU scheduling Add a command line parameter for VT-d posted-interrupts docs/misc/vtd-pi.txt | 333 +++++++++++++++++++++++++++++++++ docs/misc/xen-command-line.markdown | 9 +- xen/arch/x86/hvm/hvm.c | 6 + xen/arch/x86/hvm/vmx/vmcs.c | 21 +++ xen/arch/x86/hvm/vmx/vmx.c | 263 +++++++++++++++++++++++++- xen/common/schedule.c | 4 + xen/drivers/passthrough/io.c | 96 +++++++++- xen/drivers/passthrough/iommu.c | 12 +- xen/drivers/passthrough/vtd/intremap.c | 190 ++++++++++++++----- xen/drivers/passthrough/vtd/iommu.c | 18 +- xen/drivers/passthrough/vtd/iommu.h | 45 +++-- xen/drivers/passthrough/vtd/utils.c | 10 +- xen/include/asm-arm/domain.h | 2 + xen/include/asm-x86/cpufeature.h | 2 + xen/include/asm-x86/hvm/hvm.h | 3 + xen/include/asm-x86/hvm/vmx/vmcs.h | 27 ++- xen/include/asm-x86/hvm/vmx/vmx.h | 18 ++ xen/include/asm-x86/iommu.h | 2 + xen/include/asm-x86/x86_64/system.h | 28 +++ xen/include/xen/iommu.h | 2 +- xen/include/xen/types.h | 5 + 21 files changed, 1019 insertions(+), 77 deletions(-) create mode 100644 docs/misc/vtd-pi.txt -- 2.1.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |