On 7/11/2017 8:56 PM, Stephen Hemminger wrote: > On Sat, 8 Jul 2017 15:54:25 -0400 > Qi Zhang <qi.z.zh...@intel.com> wrote: > >> CRC size on Tx path is not necessary to be excluded. >> >> Fixes: 98abce237ba7 ("net/i40e: fix VF statistics") >> Cc: sta...@dpdk.org >> >> Signed-off-by: Qi Zhang <qi.z.zh...@intel.com> >> --- >> drivers/net/i40e/i40e_ethdev.c | 3 --- >> 1 file changed, 3 deletions(-) >> >> diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c >> index 71cb7d3..0585869 100644 >> --- a/drivers/net/i40e/i40e_ethdev.c >> +++ b/drivers/net/i40e/i40e_ethdev.c >> @@ -2353,9 +2353,6 @@ i40e_update_vsi_stats(struct i40e_vsi *vsi) >> i40e_stat_update_48(hw, I40E_GLV_BPTCH(idx), I40E_GLV_BPTCL(idx), >> vsi->offset_loaded, &oes->tx_broadcast, >> &nes->tx_broadcast); >> - /* exclude CRC bytes */ >> - nes->tx_bytes -= (nes->tx_unicast + nes->tx_multicast + >> - nes->tx_broadcast) * ETHER_CRC_LEN; >> /* GLV_TDPC not supported */ >> i40e_stat_update_32(hw, I40E_GLV_TEPC(idx), vsi->offset_loaded, >> &oes->tx_errors, &nes->tx_errors); > > Whether or not CRC is included in length statistics has been an ongoing > problem in DPDK. The Linux and BSD standard is to exclude CRC from number > of bytes; Cisco includes it, and Juniper does not. > > For application consistency across real and virtual devices, all > statistics for both transmit and receive in DPDK must NOT include CRC bytes.
In case missed, Qi sent a new version of patch with more comment [1]. It seems CRC is not counted at first place, that is why it has been excluded. So CRC bytes are not counted, even after this patch. [1] http://dpdk.org/dev/patchwork/patch/26690/ > > Is this still an issue in DPDK drivers? Do I need to put it on the > TAB agenda? Is it not clear in the documentation? >