diff options
author | Weidong Han <weidong.han@intel.com> | 2009-05-22 18:41:15 +0200 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2009-06-23 23:09:17 +0200 |
commit | f007e99c8e2e322b8331aba72414715119a2920d (patch) | |
tree | 616bfcdda74341dc8b5d9ea1013bb7506407a961 /drivers/pci/intr_remapping.h | |
parent | Intel-IOMMU, intr-remap: set the whole 128bits of irte when modify/free it (diff) | |
download | linux-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.h | 2 |
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) |