[dpdk-dev] [PATCH v3 1/4] net/i40e: fix bitmask of supported Tx flags

Ferruh Yigit ferruh.yigit at intel.com
Tue Feb 7 14:48:09 CET 2017


On 2/7/2017 3:22 AM, Jingjing Wu wrote:
> PKT_TX_TUNNEL_MASK and PKT_TX_IEEE1588_TMST are missed in bitmask
> of all supported packet Tx flags by i40e. It will cause packet preparing
> fail when sending tunnel packets with Tx offload.
> This patch fixes it.
> 
> Fixes: 3f33e643e5c6 ("net/i40e: add Tx preparation")
> Signed-off-by: Jingjing Wu <jingjing.wu at intel.com>
> ---
>  drivers/net/i40e/i40e_rxtx.c | 10 +++++++++-
>  1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c
> index 608685f..48429cc 100644
> --- a/drivers/net/i40e/i40e_rxtx.c
> +++ b/drivers/net/i40e/i40e_rxtx.c
> @@ -75,6 +75,12 @@
>  
>  #define I40E_TXD_CMD (I40E_TX_DESC_CMD_EOP | I40E_TX_DESC_CMD_RS)
>  
> +#ifdef RTE_LIBRTE_IEEE1588
> +#define I40E_TX_IEEE1588_TMST PKT_TX_IEEE1588_TMST
> +#else
> +#define I40E_TX_IEEE1588_TMST 0
> +#endif
> +
>  #define I40E_TX_CKSUM_OFFLOAD_MASK (		 \
>  		PKT_TX_IP_CKSUM |		 \
>  		PKT_TX_L4_MASK |		 \
> @@ -87,7 +93,9 @@
>  		PKT_TX_OUTER_IP_CKSUM | \
>  		PKT_TX_TCP_SEG |        \
>  		PKT_TX_QINQ_PKT |       \
> -		PKT_TX_VLAN_PKT)
> +		PKT_TX_VLAN_PKT |	\
> +		PKT_TX_TUNNEL_MASK |	\
> +		I40E_TX_IEEE1588_TMST)

PKT_TX_IEEE1588_TMST added into I40E_TX_OFFLOAD_MASK, but not into
PKT_TX_OFFLOAD_MASK (patch 4/4)

Shouldn't PKT_TX_OFFLOAD_MASK be a super set of driver ones. Otherwise
PKT_TX_IEEE1588_TMST will be marked as not supported according below XOR
logic.

>  
>  #define I40E_TX_OFFLOAD_NOTSUP_MASK \
>  		(PKT_TX_OFFLOAD_MASK ^ I40E_TX_OFFLOAD_MASK)
> 



More information about the dev mailing list