Comment 10 for bug 1896725

Revision history for this message
Stefan Bader (smb) wrote :

It looks like being a lucky "side-effect" of

commit 90ad9e2d91067983f3328e21b306323877e5f48a
Author: Thomas Gleixner <email address hidden>
Date: Wed Sep 13 23:29:49 2017 +0200

    x86/io_apic: Reevaluate vector configuration on activate()

This changes factors out the code that accesses the chip data, but at the same time limits this to only do this for the ioapic chip:

static void ioapic_configure_entry(struct irq_data *irqd)
+{
+ struct mp_chip_data *mpd = irqd->chip_data;
+ struct irq_cfg *cfg = irqd_cfg(irqd);
+ struct irq_pin_list *entry;
+
+ /*
+ * Only update when the parent is the vector domain, don't touch it
+ * if the parent is the remapping domain. Check the installed
+ * ioapic chip to verify that.
+ */
+ if (irqd->chip == &ioapic_chip) {
+ mpd->entry.dest = cfg->dest_apicid;
+ mpd->entry.vector = cfg->vector;
+ }
...