Michael suggest a few more stats we can expose.

$ ethtool -S eth0 --groups eth-mac
Standard stats for eth0:
eth-mac-FramesTransmittedOK: 902623288966
eth-mac-FramesReceivedOK: 28727667047
eth-mac-FrameCheckSequenceErrors: 1
eth-mac-AlignmentErrors: 0
eth-mac-OutOfRangeLengthField: 0
$ ethtool -S eth0 | grep '\(fcs\|align\|oor\)'
     rx_fcs_err_frames: 1
     rx_align_err_frames: 0
     tx_fcs_err_frames: 0

Suggested-by: Michael Chan <michael.c...@broadcom.com>
Signed-off-by: Jakub Kicinski <k...@kernel.org>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c 
b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index 832252313b18..3b66e300c962 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -4020,6 +4020,12 @@ static void bnxt_get_eth_mac_stats(struct net_device 
*dev,
                BNXT_GET_RX_PORT_STATS64(rx, rx_good_frames);
        mac_stats->FramesTransmittedOK =
                BNXT_GET_TX_PORT_STATS64(tx, tx_good_frames);
+       mac_stats->FrameCheckSequenceErrors =
+               BNXT_GET_RX_PORT_STATS64(rx, rx_fcs_err_frames);
+       mac_stats->AlignmentErrors =
+               BNXT_GET_RX_PORT_STATS64(rx, rx_align_err_frames);
+       mac_stats->OutOfRangeLengthField =
+               BNXT_GET_RX_PORT_STATS64(rx, rx_oor_len_frames);
 }
 
 static void bnxt_get_eth_ctrl_stats(struct net_device *dev,
-- 
2.30.2

Reply via email to