mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-07 22:08:33 -04:00
bgmac: Maintain some netdev statistics
Add a few netdev statistics to report transmitted and received bytes and packets and a few obvious errors. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
f6613d4fa9
commit
6d490f62a4
@@ -246,6 +246,8 @@ static netdev_tx_t bgmac_dma_tx_add(struct bgmac *bgmac,
|
||||
|
||||
err_drop:
|
||||
dev_kfree_skb(skb);
|
||||
net_dev->stats.tx_dropped++;
|
||||
net_dev->stats.tx_errors++;
|
||||
return NETDEV_TX_OK;
|
||||
}
|
||||
|
||||
@@ -284,6 +286,8 @@ static void bgmac_dma_tx_free(struct bgmac *bgmac, struct bgmac_dma_ring *ring)
|
||||
DMA_TO_DEVICE);
|
||||
|
||||
if (slot->skb) {
|
||||
bgmac->net_dev->stats.tx_bytes += slot->skb->len;
|
||||
bgmac->net_dev->stats.tx_packets++;
|
||||
bytes_compl += slot->skb->len;
|
||||
pkts_compl++;
|
||||
|
||||
@@ -464,6 +468,7 @@ static int bgmac_dma_rx_read(struct bgmac *bgmac, struct bgmac_dma_ring *ring,
|
||||
bgmac_err(bgmac, "Found poisoned packet at slot %d, DMA issue!\n",
|
||||
ring->start);
|
||||
put_page(virt_to_head_page(buf));
|
||||
bgmac->net_dev->stats.rx_errors++;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -471,6 +476,8 @@ static int bgmac_dma_rx_read(struct bgmac *bgmac, struct bgmac_dma_ring *ring,
|
||||
bgmac_err(bgmac, "Found oversized packet at slot %d, DMA issue!\n",
|
||||
ring->start);
|
||||
put_page(virt_to_head_page(buf));
|
||||
bgmac->net_dev->stats.rx_length_errors++;
|
||||
bgmac->net_dev->stats.rx_errors++;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -481,6 +488,7 @@ static int bgmac_dma_rx_read(struct bgmac *bgmac, struct bgmac_dma_ring *ring,
|
||||
if (unlikely(!skb)) {
|
||||
bgmac_err(bgmac, "build_skb failed\n");
|
||||
put_page(virt_to_head_page(buf));
|
||||
bgmac->net_dev->stats.rx_errors++;
|
||||
break;
|
||||
}
|
||||
skb_put(skb, BGMAC_RX_FRAME_OFFSET +
|
||||
@@ -490,6 +498,8 @@ static int bgmac_dma_rx_read(struct bgmac *bgmac, struct bgmac_dma_ring *ring,
|
||||
|
||||
skb_checksum_none_assert(skb);
|
||||
skb->protocol = eth_type_trans(skb, bgmac->net_dev);
|
||||
bgmac->net_dev->stats.rx_bytes += len;
|
||||
bgmac->net_dev->stats.rx_packets++;
|
||||
napi_gro_receive(&bgmac->napi, skb);
|
||||
handled++;
|
||||
} while (0);
|
||||
|
||||
Reference in New Issue
Block a user