[dpdk-dev,1/2] mbuf: fix bitmask of Tx offload flags

Message ID 1485258650-86193-1-git-send-email-jingjing.wu@intel.com (mailing list archive)
State Changes Requested, archived
Delegated to: Ferruh Yigit
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel compilation success Compilation OK

Commit Message

Jingjing Wu Jan. 24, 2017, 11:50 a.m. UTC
  Some Tx offload flags are missed in bitmask of all supported packet
Tx offload features flags.
This patch fixes it.

Fixes: 4fb7e803eb1a ("ethdev: add Tx preparation")
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
---
 lib/librte_mbuf/rte_mbuf.h | 4 ++++
 1 file changed, 4 insertions(+)
  

Comments

Ferruh Yigit Jan. 26, 2017, 2:19 p.m. UTC | #1
On 1/24/2017 11:50 AM, Jingjing Wu wrote:
> Some Tx offload flags are missed in bitmask of all supported packet
> Tx offload features flags.
> This patch fixes it.
> 
> Fixes: 4fb7e803eb1a ("ethdev: add Tx preparation")
> Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>

Cc: Olivier MATZ <olivier.matz@6wind.com>

<...>
  
Jingjing Wu Feb. 4, 2017, 3:36 a.m. UTC | #2
Some Tx offload flags are missed in bitmask of all supported packet
Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.

v2 changes:
 - redefine the PKT_TX_OFFLOAD_MASK
 - fix more drivers

Jingjing Wu (5):
  mbuf: fix bitmask of Tx offload flags
  net/i40e: fix bitmask of supported Tx flags
  net/ixgbe: fix bitmask of supported Tx flags
  net/e1000: fix bitmask of supported Tx flags
  net/fm10k: fix bitmask of supported Tx flags

 drivers/net/e1000/igb_rxtx.c   | 11 +++++++++++
 drivers/net/fm10k/fm10k_rxtx.c |  1 +
 drivers/net/i40e/i40e_rxtx.c   | 36 ++++++++++++++++++++++++++++--------
 drivers/net/ixgbe/ixgbe_rxtx.c | 17 ++++++++++++++++-
 lib/librte_mbuf/rte_mbuf.h     | 22 +++++++++++-----------
 5 files changed, 67 insertions(+), 20 deletions(-)
  
Jingjing Wu Feb. 7, 2017, 3:22 a.m. UTC | #3
Some Tx offload flags are missed in bitmask of all supported packet
Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.

v3 changes:
 - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
 - refine code of drivers' TX_OFFLOAD_MASK definition

v2 changes:
 - redefine the PKT_TX_OFFLOAD_MASK
 - fix more drivers

Jingjing Wu (4):
  net/i40e: fix bitmask of supported Tx flags
  net/ixgbe: fix bitmask of supported Tx flags
  net/e1000: fix bitmask of supported Tx flags
  mbuf: fix bitmask of Tx offload flags

 drivers/net/e1000/igb_rxtx.c   |  8 +++++++-
 drivers/net/i40e/i40e_rxtx.c   | 10 +++++++++-
 drivers/net/ixgbe/ixgbe_rxtx.c |  8 +++++++-
 lib/librte_mbuf/rte_mbuf.h     |  3 ++-
 4 files changed, 25 insertions(+), 4 deletions(-)
  
Jingjing Wu Feb. 8, 2017, 5:05 a.m. UTC | #4
Some Tx offload flags are missed in bitmask of all supported packet
Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.

v4 change:
 - add PKT_TX_IEEE1588_TMST to PKT_TX_OFFLOAD_MASK

v3 changes:
 - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
 - refine code of drivers' TX_OFFLOAD_MASK definition

v2 changes:
 - redefine the PKT_TX_OFFLOAD_MASK
 - fix more drivers

Jingjing Wu (4):
  net/i40e: fix bitmask of supported Tx flags
  net/ixgbe: fix bitmask of supported Tx flags
  net/e1000: fix bitmask of supported Tx flags
  mbuf: fix bitmask of Tx offload flags

 drivers/net/e1000/igb_rxtx.c   |  8 +++++++-
 drivers/net/i40e/i40e_rxtx.c   | 10 +++++++++-
 drivers/net/ixgbe/ixgbe_rxtx.c |  8 +++++++-
 lib/librte_mbuf/rte_mbuf.h     |  4 +++-
 4 files changed, 26 insertions(+), 4 deletions(-)
  
Ferruh Yigit Feb. 8, 2017, 4:32 p.m. UTC | #5
On 2/8/2017 5:05 AM, Jingjing Wu wrote:
> Some Tx offload flags are missed in bitmask of all supported packet
> Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.
> 
> v4 change:
>  - add PKT_TX_IEEE1588_TMST to PKT_TX_OFFLOAD_MASK
> 
> v3 changes:
>  - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
>  - refine code of drivers' TX_OFFLOAD_MASK definition
> 
> v2 changes:
>  - redefine the PKT_TX_OFFLOAD_MASK
>  - fix more drivers
> 
> Jingjing Wu (4):
>   net/i40e: fix bitmask of supported Tx flags
>   net/ixgbe: fix bitmask of supported Tx flags
>   net/e1000: fix bitmask of supported Tx flags

Hi Jingjing,

Just to confirm, other drivers that use PKT_TX_OFFLOAD_MASK not updated
because they don't support newly added flags, right?


>   mbuf: fix bitmask of Tx offload flags
> 
>  drivers/net/e1000/igb_rxtx.c   |  8 +++++++-
>  drivers/net/i40e/i40e_rxtx.c   | 10 +++++++++-
>  drivers/net/ixgbe/ixgbe_rxtx.c |  8 +++++++-
>  lib/librte_mbuf/rte_mbuf.h     |  4 +++-
>  4 files changed, 26 insertions(+), 4 deletions(-)
>
  
Ananyev, Konstantin Feb. 8, 2017, 4:46 p.m. UTC | #6
> -----Original Message-----
> From: Wu, Jingjing
> Sent: Wednesday, February 8, 2017 5:06 AM
> To: dev@dpdk.org
> Cc: Wu, Jingjing <jingjing.wu@intel.com>; olivier.matz@6wind.com; Zhang, Helin <helin.zhang@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>
> Subject: [PATCH v4 0/4] fix bitmask of supported Tx flags
> 
> Some Tx offload flags are missed in bitmask of all supported packet
> Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.
> 
> v4 change:
>  - add PKT_TX_IEEE1588_TMST to PKT_TX_OFFLOAD_MASK
> 
> v3 changes:
>  - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
>  - refine code of drivers' TX_OFFLOAD_MASK definition
> 
> v2 changes:
>  - redefine the PKT_TX_OFFLOAD_MASK
>  - fix more drivers
> 
> Jingjing Wu (4):
>   net/i40e: fix bitmask of supported Tx flags
>   net/ixgbe: fix bitmask of supported Tx flags
>   net/e1000: fix bitmask of supported Tx flags
>   mbuf: fix bitmask of Tx offload flags
> 
>  drivers/net/e1000/igb_rxtx.c   |  8 +++++++-
>  drivers/net/i40e/i40e_rxtx.c   | 10 +++++++++-
>  drivers/net/ixgbe/ixgbe_rxtx.c |  8 +++++++-
>  lib/librte_mbuf/rte_mbuf.h     |  4 +++-
>  4 files changed, 26 insertions(+), 4 deletions(-)
> 
> --

Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

> 2.4.11
  
Jingjing Wu Feb. 9, 2017, 1:13 a.m. UTC | #7
> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Thursday, February 9, 2017 12:33 AM
> To: Wu, Jingjing <jingjing.wu@intel.com>; dev@dpdk.org
> Cc: olivier.matz@6wind.com; Zhang, Helin <helin.zhang@intel.com>;
> Ananyev, Konstantin <konstantin.ananyev@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v4 0/4] fix bitmask of supported Tx flags
> 
> On 2/8/2017 5:05 AM, Jingjing Wu wrote:
> > Some Tx offload flags are missed in bitmask of all supported packet Tx
> > flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.
> >
> > v4 change:
> >  - add PKT_TX_IEEE1588_TMST to PKT_TX_OFFLOAD_MASK
> >
> > v3 changes:
> >  - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
> >  - refine code of drivers' TX_OFFLOAD_MASK definition
> >
> > v2 changes:
> >  - redefine the PKT_TX_OFFLOAD_MASK
> >  - fix more drivers
> >
> > Jingjing Wu (4):
> >   net/i40e: fix bitmask of supported Tx flags
> >   net/ixgbe: fix bitmask of supported Tx flags
> >   net/e1000: fix bitmask of supported Tx flags
> 
> Hi Jingjing,
> 
> Just to confirm, other drivers that use PKT_TX_OFFLOAD_MASK not updated
> because they don't support newly added flags, right?
> 
Yes, exactly!

Thanks
Jingjing
  
Ferruh Yigit Feb. 9, 2017, 2:37 p.m. UTC | #8
On 2/8/2017 4:46 PM, Ananyev, Konstantin wrote:
> 
> 
>> -----Original Message-----
>> From: Wu, Jingjing
>> Sent: Wednesday, February 8, 2017 5:06 AM
>> To: dev@dpdk.org
>> Cc: Wu, Jingjing <jingjing.wu@intel.com>; olivier.matz@6wind.com; Zhang, Helin <helin.zhang@intel.com>; Ananyev, Konstantin
>> <konstantin.ananyev@intel.com>
>> Subject: [PATCH v4 0/4] fix bitmask of supported Tx flags
>>
>> Some Tx offload flags are missed in bitmask of all supported packet
>> Tx flags, it will cause rte_eth_tx_prepare fails when Tx burst packets.
>>
>> v4 change:
>>  - add PKT_TX_IEEE1588_TMST to PKT_TX_OFFLOAD_MASK
>>
>> v3 changes:
>>  - add PKT_TX_MACSEC to PKT_TX_OFFLOAD_MASK
>>  - refine code of drivers' TX_OFFLOAD_MASK definition
>>
>> v2 changes:
>>  - redefine the PKT_TX_OFFLOAD_MASK
>>  - fix more drivers
>>
>> Jingjing Wu (4):
>>   net/i40e: fix bitmask of supported Tx flags
>>   net/ixgbe: fix bitmask of supported Tx flags
>>   net/e1000: fix bitmask of supported Tx flags
>>   mbuf: fix bitmask of Tx offload flags
>>
>>  drivers/net/e1000/igb_rxtx.c   |  8 +++++++-
>>  drivers/net/i40e/i40e_rxtx.c   | 10 +++++++++-
>>  drivers/net/ixgbe/ixgbe_rxtx.c |  8 +++++++-
>>  lib/librte_mbuf/rte_mbuf.h     |  4 +++-
>>  4 files changed, 26 insertions(+), 4 deletions(-)
>>
>> --
> 
> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>

Series applied to dpdk-next-net/master, thanks.
  

Patch

diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h
index bfce9f4..e57a4d2 100644
--- a/lib/librte_mbuf/rte_mbuf.h
+++ b/lib/librte_mbuf/rte_mbuf.h
@@ -295,8 +295,12 @@  extern "C" {
  */
 #define PKT_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 |        \