aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/acpi
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2012-11-28 10:08:24 +0100
committerJan Beulich <jbeulich@suse.com>2012-11-28 10:08:24 +0100
commitd9d2cfd5aeb47d5b057d661b9c3ef2e8e980c7f0 (patch)
tree11c90d02702fe879b5b29af640a552dd765e5703 /xen/arch/x86/acpi
parent899110e3f6d2a191638e8b50a981c551eeec49e6 (diff)
downloadxen-d9d2cfd5aeb47d5b057d661b9c3ef2e8e980c7f0.tar.gz
xen-d9d2cfd5aeb47d5b057d661b9c3ef2e8e980c7f0.tar.bz2
xen-d9d2cfd5aeb47d5b057d661b9c3ef2e8e980c7f0.zip
VT-d: adjust IOMMU interrupt affinities when all CPUs are online
Since these interrupts get setup before APs get brought online, their affinities naturally could only ever point to CPU 0 alone so far. Adjust this to include potentially multiple CPUs in the target mask (when running in one of the cluster modes), and take into account NUMA information (to handle the interrupts on a CPU on the node where the respective IOMMU is). Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/acpi')
-rw-r--r--xen/arch/x86/acpi/power.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/xen/arch/x86/acpi/power.c b/xen/arch/x86/acpi/power.c
index 9e1f98904f..e60173f952 100644
--- a/xen/arch/x86/acpi/power.c
+++ b/xen/arch/x86/acpi/power.c
@@ -219,6 +219,7 @@ static int enter_state(u32 state)
mtrr_aps_sync_begin();
enable_nonboot_cpus();
mtrr_aps_sync_end();
+ adjust_vtd_irq_affinities();
acpi_dmar_zap();
thaw_domains();
system_state = SYS_STATE_active;