summaryrefslogtreecommitdiffstats
path: root/drivers/net/mv643xx_eth.c
diff options
context:
space:
mode:
authorLennert Buytenhek <buytenh@wantstofly.org>2008-06-02 01:58:01 +0200
committerLennert Buytenhek <buytenh@wantstofly.org>2008-06-12 08:40:38 +0200
commit12e4ab79cd828563dc090d2117dc8626b344bc8f (patch)
tree84560f508e235d5ea8c8bd9b23933eec8881f54e /drivers/net/mv643xx_eth.c
parentmv643xx_eth: detect alternate TX BW control register location (diff)
downloadlinux-12e4ab79cd828563dc090d2117dc8626b344bc8f.tar.xz
linux-12e4ab79cd828563dc090d2117dc8626b344bc8f.zip
mv643xx_eth: be more agressive about RX refill
During OOM, instead of stopping RX refill when the rx desc ring is not empty, keep trying to refill the ring as long as it is not full instead. Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> Acked-by: Dale Farnsworth <dale@farnsworth.org>
Diffstat (limited to 'drivers/net/mv643xx_eth.c')
-rw-r--r--drivers/net/mv643xx_eth.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/mv643xx_eth.c b/drivers/net/mv643xx_eth.c
index 72d3f36ff284..481a2c4ff0cd 100644
--- a/drivers/net/mv643xx_eth.c
+++ b/drivers/net/mv643xx_eth.c
@@ -489,7 +489,7 @@ static void rxq_refill(struct rx_queue *rxq)
skb_reserve(skb, 2);
}
- if (rxq->rx_desc_count == 0) {
+ if (rxq->rx_desc_count != rxq->rx_ring_size) {
rxq->rx_oom.expires = jiffies + (HZ / 10);
add_timer(&rxq->rx_oom);
}