On Wed, Nov 16, 2011 at 1:58 PM, Stanislaw Gruszka <sgruszka@xxxxxxxxxx> wrote: > We have documented case of very bad performance issue on rt2800pci > device, because it generate spurious interrupt, what cause irq line > is disabled: https://bugzilla.redhat.com/show_bug.cgi?id=658451 > > We already address that problem in separate patch by returning > IRQ_HANDLED from interrupt handler. We think similar fix is needed for > other rt2x00 PCI devices, because users report performance problems on > these devices too. > > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx> Acked-by: Ivo van Doorn <IvDoorn@xxxxxxxxx> > --- > drivers/net/wireless/rt2x00/rt2400pci.c | 2 +- > drivers/net/wireless/rt2x00/rt2500pci.c | 2 +- > drivers/net/wireless/rt2x00/rt61pci.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c > index 3a6b402..676c765 100644 > --- a/drivers/net/wireless/rt2x00/rt2400pci.c > +++ b/drivers/net/wireless/rt2x00/rt2400pci.c > @@ -1380,7 +1380,7 @@ static irqreturn_t rt2400pci_interrupt(int irq, void *dev_instance) > rt2x00pci_register_write(rt2x00dev, CSR7, reg); > > if (!reg) > - return IRQ_NONE; > + return IRQ_HANDLED; > > if (!test_bit(DEVICE_STATE_ENABLED_RADIO, &rt2x00dev->flags)) > return IRQ_HANDLED; > diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c > index dcc0e1f..d0b627c 100644 > --- a/drivers/net/wireless/rt2x00/rt2500pci.c > +++ b/drivers/net/wireless/rt2x00/rt2500pci.c > @@ -1512,7 +1512,7 @@ static irqreturn_t rt2500pci_interrupt(int irq, void *dev_instance) > rt2x00pci_register_write(rt2x00dev, CSR7, reg); > > if (!reg) > - return IRQ_NONE; > + return IRQ_HANDLED; > > if (!test_bit(DEVICE_STATE_ENABLED_RADIO, &rt2x00dev->flags)) > return IRQ_HANDLED; > diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c > index bf55b4a..9d83e70 100644 > --- a/drivers/net/wireless/rt2x00/rt61pci.c > +++ b/drivers/net/wireless/rt2x00/rt61pci.c > @@ -2337,7 +2337,7 @@ static irqreturn_t rt61pci_interrupt(int irq, void *dev_instance) > rt2x00pci_register_write(rt2x00dev, INT_SOURCE_CSR, reg); > > if (!reg && !reg_mcu) > - return IRQ_NONE; > + return IRQ_HANDLED; > > if (!test_bit(DEVICE_STATE_ENABLED_RADIO, &rt2x00dev->flags)) > return IRQ_HANDLED; > -- > 1.7.1 > > -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html