net/sfc: fix generic byte statistics to exclude FCS bytes
Generic byte statistics should not include Ethernet FCS bytes.
Fixes: 1caab2f1e6
("net/sfc: add basic statistics")
Cc: stable@dpdk.org
Signed-off-by: Viacheslav Galaktionov <viacheslav.galaktionov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
This commit is contained in:
parent
061abae299
commit
8a6930361b
@ -640,10 +640,19 @@ sfc_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
|
||||
mac_stats[EFX_MAC_VADAPTER_TX_BROADCAST_BYTES];
|
||||
stats->imissed = mac_stats[EFX_MAC_VADAPTER_RX_BAD_PACKETS];
|
||||
stats->oerrors = mac_stats[EFX_MAC_VADAPTER_TX_BAD_PACKETS];
|
||||
|
||||
/* CRC is included in these stats, but shouldn't be */
|
||||
stats->ibytes -= stats->ipackets * RTE_ETHER_CRC_LEN;
|
||||
stats->obytes -= stats->opackets * RTE_ETHER_CRC_LEN;
|
||||
} else {
|
||||
stats->opackets = mac_stats[EFX_MAC_TX_PKTS];
|
||||
stats->ibytes = mac_stats[EFX_MAC_RX_OCTETS];
|
||||
stats->obytes = mac_stats[EFX_MAC_TX_OCTETS];
|
||||
|
||||
/* CRC is included in these stats, but shouldn't be */
|
||||
stats->ibytes -= mac_stats[EFX_MAC_RX_PKTS] * RTE_ETHER_CRC_LEN;
|
||||
stats->obytes -= mac_stats[EFX_MAC_TX_PKTS] * RTE_ETHER_CRC_LEN;
|
||||
|
||||
/*
|
||||
* Take into account stats which are whenever supported
|
||||
* on EF10. If some stat is not supported by current
|
||||
|
Loading…
Reference in New Issue
Block a user