diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2009-09-07 08:44:50 +0100 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2009-09-07 08:44:50 +0100 |
commit | cda2f6c76132090176f4b88c84917861c21bd21c (patch) | |
tree | 387ba0fdfd857d89ec9501ad9c1f0e04adeb5b17 /xen/arch/x86/genapic | |
parent | 1589882b8b25246268332a58135a2e66e20d63e2 (diff) | |
download | xen-cda2f6c76132090176f4b88c84917861c21bd21c.tar.gz xen-cda2f6c76132090176f4b88c84917861c21bd21c.tar.bz2 xen-cda2f6c76132090176f4b88c84917861c21bd21c.zip |
vt-d: enhance the support of Interrupt Remapping EIM and x2APIC
1) Clear Interrupt Remapping(IR) unit's CFI (Compatibility Format
Interrupt) to enhance security;
2) Move the iommu_setup() ahead and put it before we begin to use
IOAPIC so we can make sure after we enable Interrupt Remapping, the
later IOAPIC (and MSI) initialization would setup IOAPIC RTEs (and
MSI) with remappable format;
3) Enable x2APIC only when all VT-d engines support IR with EIM
(Extended Interrupt Mode). EIM enables external devices to deliver
interrupts to logical processor with >8-bit APIC ID.
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Diffstat (limited to 'xen/arch/x86/genapic')
-rw-r--r-- | xen/arch/x86/genapic/probe.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/xen/arch/x86/genapic/probe.c b/xen/arch/x86/genapic/probe.c index 295037e8cf..eaf1df24c7 100644 --- a/xen/arch/x86/genapic/probe.c +++ b/xen/arch/x86/genapic/probe.c @@ -14,7 +14,6 @@ #include <asm/apicdef.h> #include <asm/genapic.h> -extern struct genapic apic_x2apic; extern struct genapic apic_summit; extern struct genapic apic_bigsmp; extern struct genapic apic_default; @@ -22,7 +21,6 @@ extern struct genapic apic_default; struct genapic *genapic; struct genapic *apic_probe[] __initdata = { - &apic_x2apic, &apic_summit, &apic_bigsmp, &apic_default, /* must be last */ |