Messages in this thread Patch in this message | | | Date | Wed, 20 Jun 2007 10:17:34 -0400 | From | Steven Rostedt <> | Subject | Re: [PATCH -rt] irq nobody cared workaround for i386 |
| |
Michal Schmidt wrote: > Michal Schmidt wrote:
> I came to the conclusion that the IO-APICs which need the fix for the > nobody cared bug don't have the issue ack_ioapic_quirk_irq is designed > to work-around. It should be safe simply to use the normal > ack_ioapic_irq as the .eoi method in pcix_ioapic_chip. > So this is the port of Steven's fix for the nobody cared bug to i386. It > works fine on IBM LS21 I have access to. >
Thanks Michal for doing this!
> Signed-off-by: Michal Schmidt <mschmidt@redhat.com>
> @@ -1336,7 +1371,7 @@ static void __init setup_IO_APIC_irqs(vo > if (IO_APIC_IRQ(irq)) { > vector = assign_irq_vector(irq); > entry.vector = vector; > - ioapic_register_intr(irq, vector, IOAPIC_AUTO); > + ioapic_register_intr(irq, vector, IOAPIC_AUTO, apic>0);
You want to make that "apic > 0". Note the spacing. If it breaks 80 characters, then simply put it to a new line.
> > if (!apic && (irq < 16)) > disable_8259A_irq(irq); > @@ -2058,6 +2093,18 @@ static struct irq_chip ioapic_chip __rea > .retrigger = ioapic_retrigger_irq, > }; >
[...]
> static inline void init_IO_APIC_traps(void) > { > @@ -2858,7 +2905,7 @@ int io_apic_set_pci_routing (int ioapic, > mp_ioapics[ioapic].mpc_apicid, pin, entry.vector, irq, > edge_level, active_high_low); > > - ioapic_register_intr(irq, entry.vector, edge_level); > + ioapic_register_intr(irq, entry.vector, edge_level, ioapic>0);
Again, add the spaces.
> > if (!ioapic && (irq < 16)) > disable_8259A_irq(irq); > >
ACK
-- Steve - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |