From: Eric W. Biederman Date: Sun, 8 Oct 2006 13:41:19 +0000 (-0600) Subject: [PATCH] i386/x86_64: FIX pci_enable_irq to set dev->irq to the irq number X-Git-Tag: v2.6.19-rc2~267 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7da5d406792eedb5341a8c20296470b2e67743e7;p=linux-2.6 [PATCH] i386/x86_64: FIX pci_enable_irq to set dev->irq to the irq number In commit ace80ab796ae30d2c9ee8a84ab6f608a61f8b87b I removed the weird logic that used the vector number as the irq number when MSI was defined. However pci_enable_irq was using a different test in the io_apic_assign_irqs path and I missed it :( This patch removes the wrong code so no one hits this problem. This code is only active when a specific set of boot command line parameters is specified which likely explains why no one has notices this earlier. Signed-off-by: Eric W. Biederman Signed-off-by: Linus Torvalds --- diff --git a/arch/i386/pci/irq.c b/arch/i386/pci/irq.c index 47f02af74b..dbc4aae919 100644 --- a/arch/i386/pci/irq.c +++ b/arch/i386/pci/irq.c @@ -1141,10 +1141,6 @@ static int pirq_enable_irq(struct pci_dev *dev) } dev = temp_dev; if (irq >= 0) { -#ifdef CONFIG_PCI_MSI - if (!platform_legacy_irq(irq)) - irq = IO_APIC_VECTOR(irq); -#endif printk(KERN_INFO "PCI->APIC IRQ transform: %s[%c] -> IRQ %d\n", pci_name(dev), 'A' + pin, irq); dev->irq = irq;