[dpdk-dev] [PATCH v2 2/5] net/i40e: fix bitmask of supported Tx flags

Ferruh Yigit ferruh.yigit at intel.com
Sun Feb 5 11:28:36 CET 2017


On 2/4/2017 3:36 AM, Jingjing Wu wrote:
> Some Tx offload flags are missed in bitmask of all supported packet
> Tx flags by i40e.
> This patch fixes it.
> 
> CC: helin.zhang at intel.com
> Fixes: 3f33e643e5c6 ("net/i40e: add Tx preparation")
> Signed-off-by: Jingjing Wu <jingjing.wu at intel.com>
> ---
>  drivers/net/i40e/i40e_rxtx.c | 36 ++++++++++++++++++++++++++++--------
>  1 file changed, 28 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
> index 608685f..4dd45f3 100644
> --- a/drivers/net/i40e/i40e_rxtx.c
> +++ b/drivers/net/i40e/i40e_rxtx.c
> @@ -80,15 +80,35 @@
>  		PKT_TX_L4_MASK |		 \
>  		PKT_TX_TCP_SEG |		 \
>  		PKT_TX_OUTER_IP_CKSUM)
> +#ifdef RTE_LIBRTE_IEEE1588
> +#define I40E_TX_OFFLOAD_MASK (		 \
> +		PKT_TX_IP_CKSUM |	 \
> +		PKT_TX_IPV4 |		 \
> +		PKT_TX_IPV6 |		 \
> +		PKT_TX_L4_MASK |	 \
> +		PKT_TX_OUTER_IP_CKSUM |	 \
> +		PKT_TX_OUTER_IPV4 |	 \
> +		PKT_TX_OUTER_IPV6 |	 \
> +		PKT_TX_IEEE1588_TMST |	 \
> +		PKT_TX_TCP_SEG |	 \
> +		PKT_TX_QINQ_PKT |	 \
> +		PKT_TX_VLAN_PKT |	 \
> +		PKT_TX_TUNNEL_MASK)
> +#else
> +#define I40E_TX_OFFLOAD_MASK (		 \
> +		PKT_TX_IP_CKSUM |	 \
> +		PKT_TX_IPV4 |		 \
> +		PKT_TX_IPV6 |		 \
> +		PKT_TX_L4_MASK |	 \
> +		PKT_TX_OUTER_IP_CKSUM |	 \
> +		PKT_TX_OUTER_IPV4 |	 \
> +		PKT_TX_OUTER_IPV6 |	 \
> +		PKT_TX_TCP_SEG |	 \
> +		PKT_TX_QINQ_PKT |	 \
> +		PKT_TX_VLAN_PKT |	 \
> +		PKT_TX_TUNNEL_MASK)

Functionally will be same, but what do you think about following, to
make easy to see what define adds:

+#define I40E_TX_OFFLOAD_MASK (		 \
+		PKT_TX_IP_CKSUM |	 \
+		PKT_TX_IPV4 |		 \
+		PKT_TX_IPV6 |		 \
+		PKT_TX_L4_MASK |	 \
+		PKT_TX_OUTER_IP_CKSUM |	 \
+		PKT_TX_OUTER_IPV4 |	 \
+		PKT_TX_OUTER_IPV6 |	 \

+#ifdef RTE_LIBRTE_IEEE1588
+		PKT_TX_IEEE1588_TMST |	 \
+#endif

+		PKT_TX_TCP_SEG |	 \
+		PKT_TX_QINQ_PKT |	 \
+		PKT_TX_VLAN_PKT |	 \
+		PKT_TX_TUNNEL_MASK)

>  
> -#define I40E_TX_OFFLOAD_MASK (  \
> -		PKT_TX_IP_CKSUM |       \
> -		PKT_TX_L4_MASK |        \
> -		PKT_TX_OUTER_IP_CKSUM | \
> -		PKT_TX_TCP_SEG |        \
> -		PKT_TX_QINQ_PKT |       \
> -		PKT_TX_VLAN_PKT)
> -
> +#endif
>  #define I40E_TX_OFFLOAD_NOTSUP_MASK \
>  		(PKT_TX_OFFLOAD_MASK ^ I40E_TX_OFFLOAD_MASK)
>  
> 



More information about the dev mailing list