summaryrefslogtreecommitdiffstats
path: root/drivers/pci/intr_remapping.h
diff options
context:
space:
mode:
authorWeidong Han <weidong.han@intel.com>2009-05-22 18:41:15 +0200
committerDavid Woodhouse <David.Woodhouse@intel.com>2009-06-23 23:09:17 +0200
commitf007e99c8e2e322b8331aba72414715119a2920d (patch)
tree616bfcdda74341dc8b5d9ea1013bb7506407a961 /drivers/pci/intr_remapping.h
parentIntel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it (diff)
downloadlinux-f007e99c8e2e322b8331aba72414715119a2920d.tar.xz
linux-f007e99c8e2e322b8331aba72414715119a2920d.zip
Intel-IOMMU, intr-remap: source-id checking
To support domain-isolation usages, the platform hardware must be capable of uniquely identifying the requestor (source-id) for each interrupt message. Without source-id checking for interrupt remapping , a rouge guest/VM with assigned devices can launch interrupt attacks to bring down anothe guest/VM or the VMM itself. This patch adds source-id checking for interrupt remapping, and then really isolates interrupts for guests/VMs with assigned devices. Because PCI subsystem is not initialized yet when set up IOAPIC entries, use read_pci_config_byte to access PCI config space directly. Signed-off-by: Weidong Han <weidong.han@intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/pci/intr_remapping.h')
-rw-r--r--drivers/pci/intr_remapping.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/pci/intr_remapping.h b/drivers/pci/intr_remapping.h
index ca48f0df8ac9..63a263c18415 100644
--- a/drivers/pci/intr_remapping.h
+++ b/drivers/pci/intr_remapping.h
@@ -3,6 +3,8 @@
struct ioapic_scope {
struct intel_iommu *iommu;
unsigned int id;
+ unsigned int bus; /* PCI bus number */
+ unsigned int devfn; /* PCI devfn number */
};
#define IR_X2APIC_MODE(mode) (mode ? (1 << 11) : 0)