summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBaruch Siach <baruch@tkos.co.il>2008-12-15 20:18:52 +0000
committerDavid S. Miller <davem@davemloft.net>2008-12-16 01:48:29 -0800
commit2c413a6434dca02387a263dc4ca8009692421998 (patch)
treeac684707490d56c511cd46129e3a64df7943bb2f
parent8953f1282793882a5444924f7a273dc72a43d0a3 (diff)
downloadlinux-stable-2c413a6434dca02387a263dc4ca8009692421998.tar.gz
linux-stable-2c413a6434dca02387a263dc4ca8009692421998.tar.bz2
linux-stable-2c413a6434dca02387a263dc4ca8009692421998.zip
enc28j60: use netif_rx_ni() to deliver RX packets
The enc28j60 driver reads incoming packets in the process (workqueue) context, not in a tasklet or the interrupt context. Thus, we should use netif_rx_ni() to deliver those packets to the networking layer, instead of netif_rx(). This way incoming packets don't wait in the incoming queue for the next IRQ to be serviced. Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/enc28j60.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/enc28j60.c b/drivers/net/enc28j60.c
index c414554ac321..36cb6e95b465 100644
--- a/drivers/net/enc28j60.c
+++ b/drivers/net/enc28j60.c
@@ -959,7 +959,7 @@ static void enc28j60_hw_rx(struct net_device *ndev)
ndev->stats.rx_packets++;
ndev->stats.rx_bytes += len;
ndev->last_rx = jiffies;
- netif_rx(skb);
+ netif_rx_ni(skb);
}
}
/*