From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1617E4624E for ; Mon, 17 Feb 2025 18:05:37 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 08E4340289; Mon, 17 Feb 2025 18:05:37 +0100 (CET) Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by mails.dpdk.org (Postfix) with ESMTP id 440AA402C6 for ; Mon, 17 Feb 2025 18:05:35 +0100 (CET) Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-4398e839cd4so2914365e9.0 for ; Mon, 17 Feb 2025 09:05:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739811935; x=1740416735; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=el4p9AfdH4BvERMqEMrR+FsmIAukDKJUGAUQftWWKLk=; b=JhMZOSh+nENuDRnMp09JhvvKwyMqf94I7Hh167AV7Utu7JP1lekh/igQpWGEHdhcLu GrumvZ3BpE2ayWKGFNmIWoDt76SFaIaxxf07JPcF9xeZcXLIyyW2LgeOjyi7FdG2TyMQ 4erpk6JCkkyk4wxCT4ZlU98CfFYUc2MThByzZkxhN5LKbCRhpKU4IZtW2nqHIzHq6by9 l+0UqerOmFNcmqS3wLG0kDgxFgRVocM/dS8k53sEX6rPs6udsCY0oEgnQpyvgVqA6c94 s7HxakzHGhZiuVeUFcBdx4OzGVKstTu8ls1LaoOJHZY3GbdmW2uU7HQd/Eeo5WARy5Dm 6CqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739811935; x=1740416735; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=el4p9AfdH4BvERMqEMrR+FsmIAukDKJUGAUQftWWKLk=; b=RlmInSDUMCkKOZiQ83uzH3sXf6Chyhu6yviE3SIoxlj5sqbWCKxOBO2lnFYKO5+JdX 8Va4eWXQh+hBcu9LPZsVsbkuhgt0ccGOhjcKG7zdTl66sTNs5Fq8GFYI6izOTMhBATaG I/ZOEaKo6lw4w5PhCsYR08xJlt1tt9UNDRjaFh8wf9IOqI049vBtMqEpyPowyQEkjmk0 aVUtcO4HelwPtoCzrOTsTWXLhT6njFD7zOBidiCPsqC9y8YwOGgcDEt+0XBoGiG64ITJ GX3OpEzSBOBeEI8hQZjAqVghuSr8SA2WcI5tQ/+Pi4V8IDEDDwIRc5qldyX6Bt5Af1Dy kE+Q== X-Forwarded-Encrypted: i=1; AJvYcCX7j5/iKWFT9lwEk1mTKmqdxnRWP7EcEreU/x39Au4dH7l+U24amW0pRA3sFN3f+Rnept7cyoA=@dpdk.org X-Gm-Message-State: AOJu0YylBBdY91k1JNviC7V5lX9i5iJob6vqgIYJqnQZMH4GjofDx3UN hnt25SJuwyjNckQSPqYtrbfAOE3Dl1ZQ1JQ71Pu9SBssuqX+r7OfUsW/MeiBhxg= X-Gm-Gg: ASbGncvtG+EMdxHiLQcLpGvsw6DP1k50JbcAi96GZMUHGw+/yx58K6z+Qxhfbr/rJFH DQnkMeGVXVGaGKU6vfd/nT0pCoB3xtpz5NnEqBeMIrmcJI8j1r9BGTw00w//Pa70FP64TIgwW6K nDt5WK28e1Aovdq+C/uxGw18E4zFW6YKwdyq1YbMDFsUfHu+ljaOBlhDJhCINu6Ele09olhJYvp lpAr0imEPZO2codWUEVI9E3f6X/cqmkpzOD2StScj5omRSDAPc0aXuT8epbVKz+ANp7AbhUyYz/ /pqHXSCD6I6d78LKXcTfsw== X-Google-Smtp-Source: AGHT+IHWd+pq6iEinSr1hOBn/ZFY0sUNlXXs1hWFaPNmhZ6CPpT0GBNcF15qopKKW/ZmQ/yTKsoRZQ== X-Received: by 2002:a05:600c:929:b0:439:8a64:db3c with SMTP id 5b1f17b1804b1-4398a64dc4amr25690105e9.1.1739811934533; Mon, 17 Feb 2025 09:05:34 -0800 (PST) Received: from localhost ([2a01:4b00:d036:ae00:f83c:95e7:29fd:a997]) by smtp.gmail.com with UTF8SMTPSA id 5b1f17b1804b1-4395a055910sm157477195e9.9.2025.02.17.09.05.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 17 Feb 2025 09:05:34 -0800 (PST) From: luca.boccassi@gmail.com To: Bruce Richardson Cc: Vladimir Medvedkin , dpdk stable Subject: patch 'net/iavf: remove reset of Tx prepare function pointer' has been queued to stable release 22.11.8 Date: Mon, 17 Feb 2025 17:03:46 +0000 Message-ID: <20250217170456.1068278-13-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250217170456.1068278-1-luca.boccassi@gmail.com> References: <20250217170456.1068278-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org 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 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 Acked-by: Vladimir Medvedkin --- 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@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