net: stmmac: Fix the packet count in stmmac_rx()
Currently, stmmac_rx() is counting the number of descriptors but it
should count the number of packets as specified by the NAPI limit.
Fix this.
Fixes: ec222003bd
("net: stmmac: Prepare to add Split Header support")
Signed-off-by: Jose Abreu <Jose.Abreu@synopsys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
aeb18dd076
commit
cda4985a3e
@ -3506,8 +3506,6 @@ static int stmmac_rx(struct stmmac_priv *priv, int limit, u32 queue)
|
||||
if (unlikely(status & dma_own))
|
||||
break;
|
||||
|
||||
count++;
|
||||
|
||||
rx_q->cur_rx = STMMAC_GET_ENTRY(rx_q->cur_rx, DMA_RX_SIZE);
|
||||
next_entry = rx_q->cur_rx;
|
||||
|
||||
@ -3534,6 +3532,7 @@ static int stmmac_rx(struct stmmac_priv *priv, int limit, u32 queue)
|
||||
goto read_again;
|
||||
if (unlikely(error)) {
|
||||
dev_kfree_skb(skb);
|
||||
count++;
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -3573,6 +3572,7 @@ static int stmmac_rx(struct stmmac_priv *priv, int limit, u32 queue)
|
||||
skb = napi_alloc_skb(&ch->rx_napi, len);
|
||||
if (!skb) {
|
||||
priv->dev->stats.rx_dropped++;
|
||||
count++;
|
||||
continue;
|
||||
}
|
||||
|
||||
@ -3638,6 +3638,7 @@ static int stmmac_rx(struct stmmac_priv *priv, int limit, u32 queue)
|
||||
|
||||
priv->dev->stats.rx_packets++;
|
||||
priv->dev->stats.rx_bytes += len;
|
||||
count++;
|
||||
}
|
||||
|
||||
if (status & rx_not_ls) {
|
||||
|
Loading…
Reference in New Issue
Block a user