Przeglądaj źródła

ethoc: clear only pending irqs

This patch fixed the problem of dropped packets due to lost of
interrupt requests. We should only clear what was pending at the
moment we read the irq source reg.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: David S. Miller <davem@davemloft.net>
Thomas Chou 15 lat temu
rodzic
commit
50c54a57df
1 zmienionych plików z 1 dodań i 1 usunięć
  1. 1 1
      drivers/net/ethoc.c

+ 1 - 1
drivers/net/ethoc.c

@@ -508,7 +508,7 @@ static irqreturn_t ethoc_interrupt(int irq, void *dev_id)
 		return IRQ_NONE;
 		return IRQ_NONE;
 	}
 	}
 
 
-	ethoc_ack_irq(priv, INT_MASK_ALL);
+	ethoc_ack_irq(priv, pending);
 
 
 	if (pending & INT_MASK_BUSY) {
 	if (pending & INT_MASK_BUSY) {
 		dev_err(&dev->dev, "packet dropped\n");
 		dev_err(&dev->dev, "packet dropped\n");