net/mlx5: add glue for queue query via DevX
[dpdk.git] / drivers / net / iavf / iavf_rxtx.c
index 0be3ede..d8eb6d2 100644 (file)
@@ -1449,9 +1449,6 @@ iavf_set_tso_ctx(struct rte_mbuf *mbuf, union iavf_tx_offload tx_offload)
                return ctx_desc;
        }
 
-       /* in case of non tunneling packet, the outer_l2_len and
-        * outer_l3_len must be 0.
-        */
        hdr_len = tx_offload.l2_len +
                  tx_offload.l3_len +
                  tx_offload.l4_len;
@@ -1583,6 +1580,9 @@ iavf_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, uint16_t nb_pkts)
                        /* Setup TX context descriptor if required */
                        uint64_t cd_type_cmd_tso_mss =
                                IAVF_TX_DESC_DTYPE_CONTEXT;
+                       volatile struct iavf_tx_context_desc *ctx_txd =
+                               (volatile struct iavf_tx_context_desc *)
+                                                       &txr[tx_id];
 
                        txn = &sw_ring[txe->next_id];
                        RTE_MBUF_PREFETCH_TO_FREE(txn->mbuf);
@@ -1596,6 +1596,9 @@ iavf_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, uint16_t nb_pkts)
                                cd_type_cmd_tso_mss |=
                                        iavf_set_tso_ctx(tx_pkt, tx_offload);
 
+                       ctx_txd->type_cmd_tso_mss =
+                               rte_cpu_to_le_64(cd_type_cmd_tso_mss);
+
                        IAVF_DUMP_TX_DESC(txq, &txr[tx_id], tx_id);
                        txe->last_id = tx_last;
                        tx_id = txe->next_id;