[dpdk-dev] net/mlx5: fix HW checksum offload for outer IP

Message ID 20180103080622.2063-1-yskoh@mellanox.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers

Checks

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

Commit Message

Yongseok Koh Jan. 3, 2018, 8:06 a.m. UTC
  Checking HW checksum offload flag for outer IP is missing. If flag is set
for only outer IP, this can't be set properly.

Fixes: f5fde5205101 ("net/mlx5: add hardware checksum offload for tunnel packets")
Cc: stable@dpdk.org

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
---
 drivers/net/mlx5/mlx5_rxtx.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Nélio Laranjeiro Jan. 3, 2018, 8:29 a.m. UTC | #1
On Wed, Jan 03, 2018 at 12:06:22AM -0800, Yongseok Koh wrote:
> Checking HW checksum offload flag for outer IP is missing. If flag is set
> for only outer IP, this can't be set properly.
> 
> Fixes: f5fde5205101 ("net/mlx5: add hardware checksum offload for tunnel packets")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
> Acked-by: Shahaf Shuler <shahafs@mellanox.com>

Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>

> ---
>  drivers/net/mlx5/mlx5_rxtx.h | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h
> index e70d52361..90f129168 100644
> --- a/drivers/net/mlx5/mlx5_rxtx.h
> +++ b/drivers/net/mlx5/mlx5_rxtx.h
> @@ -636,7 +636,8 @@ txq_ol_cksum_to_cs(struct mlx5_txq_data *txq_data, struct rte_mbuf *buf)
>  
>  	/* Should we enable HW CKSUM offload */
>  	if (buf->ol_flags &
> -	    (PKT_TX_IP_CKSUM | PKT_TX_TCP_CKSUM | PKT_TX_UDP_CKSUM)) {
> +	    (PKT_TX_IP_CKSUM | PKT_TX_TCP_CKSUM | PKT_TX_UDP_CKSUM |
> +	     PKT_TX_OUTER_IP_CKSUM)) {
>  		if (txq_data->tunnel_en &&
>  		    (buf->ol_flags &
>  		     (PKT_TX_TUNNEL_GRE | PKT_TX_TUNNEL_VXLAN))) {
> -- 
> 2.11.0
>
  
Shahaf Shuler Jan. 7, 2018, 2:13 p.m. UTC | #2
Wednesday, January 3, 2018 10:30 AM, Nelio Laranjeiro:
> Subject: Re: [dpdk-dev] [PATCH] net/mlx5: fix HW checksum offload for
> outer IP
> 
> On Wed, Jan 03, 2018 at 12:06:22AM -0800, Yongseok Koh wrote:
> > Checking HW checksum offload flag for outer IP is missing. If flag is
> > set for only outer IP, this can't be set properly.
> >
> > Fixes: f5fde5205101 ("net/mlx5: add hardware checksum offload for
> > tunnel packets")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
> > Acked-by: Shahaf Shuler <shahafs@mellanox.com>
> 
> Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>

Applied to next-net-mlx, thanks
  

Patch

diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h
index e70d52361..90f129168 100644
--- a/drivers/net/mlx5/mlx5_rxtx.h
+++ b/drivers/net/mlx5/mlx5_rxtx.h
@@ -636,7 +636,8 @@  txq_ol_cksum_to_cs(struct mlx5_txq_data *txq_data, struct rte_mbuf *buf)
 
 	/* Should we enable HW CKSUM offload */
 	if (buf->ol_flags &
-	    (PKT_TX_IP_CKSUM | PKT_TX_TCP_CKSUM | PKT_TX_UDP_CKSUM)) {
+	    (PKT_TX_IP_CKSUM | PKT_TX_TCP_CKSUM | PKT_TX_UDP_CKSUM |
+	     PKT_TX_OUTER_IP_CKSUM)) {
 		if (txq_data->tunnel_en &&
 		    (buf->ol_flags &
 		     (PKT_TX_TUNNEL_GRE | PKT_TX_TUNNEL_VXLAN))) {