|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] Revert "x86/IO-APIC: fix setup of Xen internally used IRQs"
commit 5ea01bf96e5072ac88e23f35cd087a2fdb9eb856
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Fri Nov 13 15:39:57 2015 +0100
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Fri Nov 13 15:39:57 2015 +0100
Revert "x86/IO-APIC: fix setup of Xen internally used IRQs"
This reverts commit 1126b40892ab56cb13c3cae5822bf3a18a689ffb,
as it breaks (at least) x2apic systems.
---
xen/arch/x86/io_apic.c | 5 +----
xen/arch/x86/smpboot.c | 2 +-
2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c
index 464647f..f8c8e55 100644
--- a/xen/arch/x86/io_apic.c
+++ b/xen/arch/x86/io_apic.c
@@ -2201,7 +2201,6 @@ int io_apic_set_pci_routing (int ioapic, int pin, int
irq, int edge_level, int a
{
struct irq_desc *desc = irq_to_desc(irq);
struct IO_APIC_route_entry entry;
- cpumask_t mask;
unsigned long flags;
int vector;
@@ -2221,6 +2220,7 @@ int io_apic_set_pci_routing (int ioapic, int pin, int
irq, int edge_level, int a
entry.delivery_mode = INT_DELIVERY_MODE;
entry.dest_mode = INT_DEST_MODE;
+ SET_DEST(entry, logical, cpu_mask_to_apicid(TARGET_CPUS));
entry.trigger = edge_level;
entry.polarity = active_high_low;
entry.mask = 1;
@@ -2236,9 +2236,6 @@ int io_apic_set_pci_routing (int ioapic, int pin, int
irq, int edge_level, int a
return vector;
entry.vector = vector;
- cpumask_and(&mask, desc->arch.cpu_mask, TARGET_CPUS);
- SET_DEST(entry, logical, cpu_mask_to_apicid(&mask));
-
apic_printk(APIC_DEBUG, KERN_DEBUG "IOAPIC[%d]: Set PCI routing entry "
"(%d-%d -> %#x -> IRQ %d Mode:%i Active:%i)\n", ioapic,
mp_ioapics[ioapic].mpc_apicid, pin, entry.vector, irq,
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
index 1d884af..dabc929 100644
--- a/xen/arch/x86/smpboot.c
+++ b/xen/arch/x86/smpboot.c
@@ -1084,7 +1084,7 @@ void __init smp_intr_init(void)
vector = alloc_hipriority_vector();
per_cpu(vector_irq, cpu)[vector] = irq;
irq_to_desc(irq)->arch.vector = vector;
- cpumask_setall(irq_to_desc(irq)->arch.cpu_mask);
+ cpumask_copy(irq_to_desc(irq)->arch.cpu_mask, &cpu_online_map);
}
/* Direct IPI vectors. */
--
generated by git-patchbot for /home/xen/git/xen.git#master
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |