DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes
@ 2017-07-08 19:54 Qi Zhang
  2017-07-10  2:45 ` Xing, Beilei
  2017-07-11 19:56 ` Stephen Hemminger
  0 siblings, 2 replies; 4+ messages in thread
From: Qi Zhang @ 2017-07-08 19:54 UTC (permalink / raw)
  To: jingjing.wu, beilei.xing, ferruh.yigit; +Cc: dev, helin.zhang, Qi Zhang, stable

CRC size on Tx path is not necessary to be excluded.

Fixes: 98abce237ba7 ("net/i40e: fix VF statistics")
Cc: stable@dpdk.org

Signed-off-by: Qi Zhang <qi.z.zhang@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);
-- 
2.7.4

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes
  2017-07-08 19:54 [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes Qi Zhang
@ 2017-07-10  2:45 ` Xing, Beilei
  2017-07-11 19:56 ` Stephen Hemminger
  1 sibling, 0 replies; 4+ messages in thread
From: Xing, Beilei @ 2017-07-10  2:45 UTC (permalink / raw)
  To: Zhang, Qi Z, Wu, Jingjing, Yigit, Ferruh; +Cc: dev, Zhang, Helin, stable


> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Sunday, July 9, 2017 3:54 AM
> To: Wu, Jingjing <jingjing.wu@intel.com>; Xing, Beilei <beilei.xing@intel.com>;
> Yigit, Ferruh <ferruh.yigit@intel.com>
> Cc: dev@dpdk.org; Zhang, Helin <helin.zhang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>; stable@dpdk.org
> Subject: [PATCH] net/i40e: fix VF Tx bytes
> 
> CRC size on Tx path is not necessary to be excluded.
> 
> Fixes: 98abce237ba7 ("net/i40e: fix VF statistics")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>

Acked-by: Beilei Xing <beilei.xing@intel.com>

The patch is OK for me, just little comment, it's better to detail the commit log to explain why we need to exclude it.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes
  2017-07-08 19:54 [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes Qi Zhang
  2017-07-10  2:45 ` Xing, Beilei
@ 2017-07-11 19:56 ` Stephen Hemminger
  2017-07-17  9:17   ` Ferruh Yigit
  1 sibling, 1 reply; 4+ messages in thread
From: Stephen Hemminger @ 2017-07-11 19:56 UTC (permalink / raw)
  To: Qi Zhang; +Cc: jingjing.wu, beilei.xing, ferruh.yigit, dev, helin.zhang, stable

On Sat,  8 Jul 2017 15:54:25 -0400
Qi Zhang <qi.z.zhang@intel.com> wrote:

> CRC size on Tx path is not necessary to be excluded.
> 
> Fixes: 98abce237ba7 ("net/i40e: fix VF statistics")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Qi Zhang <qi.z.zhang@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.

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?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes
  2017-07-11 19:56 ` Stephen Hemminger
@ 2017-07-17  9:17   ` Ferruh Yigit
  0 siblings, 0 replies; 4+ messages in thread
From: Ferruh Yigit @ 2017-07-17  9:17 UTC (permalink / raw)
  To: Stephen Hemminger, Qi Zhang
  Cc: jingjing.wu, beilei.xing, dev, helin.zhang, stable

On 7/11/2017 8:56 PM, Stephen Hemminger wrote:
> On Sat,  8 Jul 2017 15:54:25 -0400
> Qi Zhang <qi.z.zhang@intel.com> wrote:
> 
>> CRC size on Tx path is not necessary to be excluded.
>>
>> Fixes: 98abce237ba7 ("net/i40e: fix VF statistics")
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Qi Zhang <qi.z.zhang@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?
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-07-17  9:17 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-08 19:54 [dpdk-dev] [PATCH] net/i40e: fix VF Tx bytes Qi Zhang
2017-07-10  2:45 ` Xing, Beilei
2017-07-11 19:56 ` Stephen Hemminger
2017-07-17  9:17   ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).