patch 'net/iavf: remove reset of Tx prepare function pointer' has been queued to stable release 22.11.8
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Mon Feb 17 18:03:46 CET 2025
Hi,
FYI, your patch has been queued to stable release 22.11.8
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/19/25. So please
shout if anyone has objections.
Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.
Queued patches are on a temporary branch at:
https://github.com/bluca/dpdk-stable
This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/f2da2b7ca501a9a6faed8b239782c9b865f098e9
Thanks.
Luca Boccassi
---
>From f2da2b7ca501a9a6faed8b239782c9b865f098e9 Mon Sep 17 00:00:00 2001
From: Bruce Richardson <bruce.richardson at intel.com>
Date: Fri, 13 Dec 2024 14:33:19 +0000
Subject: [PATCH] net/iavf: remove reset of Tx prepare function pointer
[ upstream commit 41be96c907607bc709654f71901913f1534264f8 ]
The iavf driver only contains a single Tx prepare function, so when
selecting the Tx path, there is no need to reset and reassign the
function pointer in the ethdev structure. This fixes an issue where the
pointer was reset to NULL, but never assigned back later on function
selection.
Fixes: 5712bf9d6e14 ("net/iavf: add Tx AVX2 offload path")
Fixes: 08eb6a9cc2e1 ("net/iavf: fix Tx L4 checksum")
Fixes: 4f8259df563a ("net/iavf: enable Tx outer checksum offload on AVX512")
Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
Acked-by: Vladimir Medvedkin <vladimir.medvedkin at intel.com>
---
drivers/net/iavf/iavf_rxtx.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/net/iavf/iavf_rxtx.c b/drivers/net/iavf/iavf_rxtx.c
index 073f724231..3272553b5c 100644
--- a/drivers/net/iavf/iavf_rxtx.c
+++ b/drivers/net/iavf/iavf_rxtx.c
@@ -3261,7 +3261,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
iavf_xmit_pkts_vec_avx2 :
iavf_xmit_pkts_vec;
}
- dev->tx_pkt_prepare = NULL;
#ifdef CC_AVX512_SUPPORT
if (use_avx512) {
if (check_ret == IAVF_VECTOR_PATH) {
@@ -3270,7 +3269,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
dev->data->port_id);
} else {
dev->tx_pkt_burst = iavf_xmit_pkts_vec_avx512_offload;
- dev->tx_pkt_prepare = iavf_prep_pkts;
PMD_DRV_LOG(DEBUG, "Using AVX512 OFFLOAD Vector Tx (port %d).",
dev->data->port_id);
}
@@ -3299,7 +3297,6 @@ normal:
PMD_DRV_LOG(DEBUG, "Using Basic Tx callback (port=%d).",
dev->data->port_id);
dev->tx_pkt_burst = iavf_xmit_pkts;
- dev->tx_pkt_prepare = iavf_prep_pkts;
}
static int
--
2.47.2
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2025-02-17 16:13:17.353455422 +0000
+++ 0013-net-iavf-remove-reset-of-Tx-prepare-function-pointer.patch 2025-02-17 16:13:16.794441593 +0000
@@ -1 +1 @@
-From 41be96c907607bc709654f71901913f1534264f8 Mon Sep 17 00:00:00 2001
+From f2da2b7ca501a9a6faed8b239782c9b865f098e9 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 41be96c907607bc709654f71901913f1534264f8 ]
+
@@ -15 +16,0 @@
-Cc: stable at dpdk.org
@@ -20,2 +21,2 @@
- drivers/net/iavf/iavf_rxtx.c | 6 ------
- 1 file changed, 6 deletions(-)
+ drivers/net/iavf/iavf_rxtx.c | 3 ---
+ 1 file changed, 3 deletions(-)
@@ -24 +25 @@
-index f7df5f21f2..457b5a5655 100644
+index 073f724231..3272553b5c 100644
@@ -27,4 +28,4 @@
-@@ -4173,7 +4173,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
- if (!use_sse && !use_avx2 && !use_avx512)
- goto normal;
-
+@@ -3261,7 +3261,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
+ iavf_xmit_pkts_vec_avx2 :
+ iavf_xmit_pkts_vec;
+ }
@@ -32,12 +33,4 @@
- if (use_sse) {
- PMD_DRV_LOG(DEBUG, "Using Vector Tx (port %d).",
- dev->data->port_id);
-@@ -4190,7 +4189,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
- goto normal;
- } else {
- tx_burst_type = IAVF_TX_AVX2_OFFLOAD;
-- dev->tx_pkt_prepare = iavf_prep_pkts;
- PMD_DRV_LOG(DEBUG, "Using AVX2 OFFLOAD Vector Tx (port %d).",
- dev->data->port_id);
- }
-@@ -4203,17 +4201,14 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
+ #ifdef CC_AVX512_SUPPORT
+ if (use_avx512) {
+ if (check_ret == IAVF_VECTOR_PATH) {
+@@ -3270,7 +3269,6 @@ iavf_set_tx_function(struct rte_eth_dev *dev)
@@ -45,10 +37,0 @@
- } else if (check_ret == IAVF_VECTOR_OFFLOAD_PATH) {
- tx_burst_type = IAVF_TX_AVX512_OFFLOAD;
-- dev->tx_pkt_prepare = iavf_prep_pkts;
- PMD_DRV_LOG(DEBUG, "Using AVX512 OFFLOAD Vector Tx (port %d).",
- dev->data->port_id);
- } else if (check_ret == IAVF_VECTOR_CTX_PATH) {
- tx_burst_type = IAVF_TX_AVX512_CTX;
-- dev->tx_pkt_prepare = iavf_prep_pkts;
- PMD_DRV_LOG(DEBUG, "Using AVX512 CONTEXT Vector Tx (port %d).",
- dev->data->port_id);
@@ -56 +39 @@
- tx_burst_type = IAVF_TX_AVX512_CTX_OFFLOAD;
+ dev->tx_pkt_burst = iavf_xmit_pkts_vec_avx512_offload;
@@ -58 +41 @@
- PMD_DRV_LOG(DEBUG, "Using AVX512 CONTEXT OFFLOAD Vector Tx (port %d).",
+ PMD_DRV_LOG(DEBUG, "Using AVX512 OFFLOAD Vector Tx (port %d).",
@@ -61 +44 @@
-@@ -4251,7 +4246,6 @@ normal:
+@@ -3299,7 +3297,6 @@ normal:
@@ -64 +47 @@
- tx_burst_type = IAVF_TX_DEFAULT;
+ dev->tx_pkt_burst = iavf_xmit_pkts;
@@ -65,0 +49 @@
+ }
@@ -67,2 +51 @@
- if (no_poll_on_link_down) {
- adapter->tx_burst_type = tx_burst_type;
+ static int
More information about the stable
mailing list