Ver Fonte

ARCNET: return IRQ_NONE if the interface isn't running

The interrupt handler needs to return IRQ_NONE in case
two devices are used with the shared interrupt handler.
Otherwise it could steal interrupts from the other
interface.

Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michael Grzeschik há 11 anos atrás
pai
commit
226ee67515
1 ficheiros alterados com 1 adições e 1 exclusões
  1. 1 1
      drivers/net/arcnet/arcnet.c

+ 1 - 1
drivers/net/arcnet/arcnet.c

@@ -777,7 +777,7 @@ irqreturn_t arcnet_interrupt(int irq, void *dev_id)
 			ACOMMAND(CFLAGScmd | RESETclear);
 			ACOMMAND(CFLAGScmd | RESETclear);
 		AINTMASK(0);
 		AINTMASK(0);
 		spin_unlock(&lp->lock);
 		spin_unlock(&lp->lock);
-		return IRQ_HANDLED;
+		return retval;
 	}
 	}
 
 
 	BUGMSG(D_DURING, "in arcnet_inthandler (status=%Xh, intmask=%Xh)\n",
 	BUGMSG(D_DURING, "in arcnet_inthandler (status=%Xh, intmask=%Xh)\n",