net/mlx5: separate generic tunnel TSO from the standard one
authorShahaf Shuler <shahafs@mellanox.com>
Sun, 24 Jun 2018 06:22:26 +0000 (09:22 +0300)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 2 Jul 2018 23:35:58 +0000 (01:35 +0200)
The generic tunnel TSO was depended in the regular one capabilities to
be enabled.

Cc: stable@dpdk.org
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
drivers/net/mlx5/mlx5_txq.c

index 068f36d..669b913 100644 (file)
@@ -113,15 +113,20 @@ mlx5_get_tx_port_offloads(struct rte_eth_dev *dev)
                             DEV_TX_OFFLOAD_TCP_CKSUM);
        if (config->tso)
                offloads |= DEV_TX_OFFLOAD_TCP_TSO;
+       if (config->swp) {
+               if (config->hw_csum)
+                       offloads |= DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM;
+               if (config->tso)
+                       offloads |= (DEV_TX_OFFLOAD_IP_TNL_TSO |
+                                    DEV_TX_OFFLOAD_UDP_TNL_TSO);
+       }
+
        if (config->tunnel_en) {
                if (config->hw_csum)
                        offloads |= DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM;
                if (config->tso)
                        offloads |= (DEV_TX_OFFLOAD_VXLAN_TNL_TSO |
                                     DEV_TX_OFFLOAD_GRE_TNL_TSO);
-               if (config->swp)
-                       offloads |= (DEV_TX_OFFLOAD_IP_TNL_TSO |
-                                    DEV_TX_OFFLOAD_UDP_TNL_TSO);
        }
        return offloads;
 }
@@ -707,7 +712,7 @@ txq_set_params(struct mlx5_txq_ctrl *txq_ctrl)
                                                   max_tso_inline);
                txq_ctrl->txq.tso_en = 1;
        }
-       txq_ctrl->txq.tunnel_en = config->tunnel_en;
+       txq_ctrl->txq.tunnel_en = config->tunnel_en | config->swp;
        txq_ctrl->txq.swp_en = ((DEV_TX_OFFLOAD_IP_TNL_TSO |
                                 DEV_TX_OFFLOAD_UDP_TNL_TSO |
                                 DEV_TX_OFFLOAD_OUTER_IPV4_CKSUM) &