aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/realtek/8139cp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/realtek/8139cp.c')
-rw-r--r--drivers/net/ethernet/realtek/8139cp.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/net/ethernet/realtek/8139cp.c b/drivers/net/ethernet/realtek/8139cp.c
index a3c1daa7ad5c..2bc728e65e24 100644
--- a/drivers/net/ethernet/realtek/8139cp.c
+++ b/drivers/net/ethernet/realtek/8139cp.c
@@ -476,7 +476,7 @@ rx_status_loop:
476 rx = 0; 476 rx = 0;
477 cpw16(IntrStatus, cp_rx_intr_mask); 477 cpw16(IntrStatus, cp_rx_intr_mask);
478 478
479 while (1) { 479 while (rx < budget) {
480 u32 status, len; 480 u32 status, len;
481 dma_addr_t mapping, new_mapping; 481 dma_addr_t mapping, new_mapping;
482 struct sk_buff *skb, *new_skb; 482 struct sk_buff *skb, *new_skb;
@@ -554,9 +554,6 @@ rx_next:
554 else 554 else
555 desc->opts1 = cpu_to_le32(DescOwn | cp->rx_buf_sz); 555 desc->opts1 = cpu_to_le32(DescOwn | cp->rx_buf_sz);
556 rx_tail = NEXT_RX(rx_tail); 556 rx_tail = NEXT_RX(rx_tail);
557
558 if (rx >= budget)
559 break;
560 } 557 }
561 558
562 cp->rx_tail = rx_tail; 559 cp->rx_tail = rx_tail;