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 F244C48B69 for ; Fri, 21 Nov 2025 12:22:53 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EB057402E5; Fri, 21 Nov 2025 12:22:53 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id ABB964026F for ; Fri, 21 Nov 2025 12:22:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763724171; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4k9yU7r0QOEpfhSE13BS5YWNyvnyBFf184bqlDkUt9Y=; b=fd51dVkiyOJsMXti6AcK+j+OP/YPL6A9f3CUx+Lm41hB5IenybkqXk8UEhyzOQ4uzpOjqr VaN7tly5fYnuKcNlPO6doj5opayym1+Q3/qJYxIOj5wKQFEzE1u4HDN12w7Rh9ens7Ve2k 4oimjrlEjYP/SXGM/br+XGqv9Yl893A= Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-488-CUNRcG4mPeW3GGQlB0y2xg-1; Fri, 21 Nov 2025 06:22:48 -0500 X-MC-Unique: CUNRcG4mPeW3GGQlB0y2xg-1 X-Mimecast-MFC-AGG-ID: CUNRcG4mPeW3GGQlB0y2xg_1763724167 Received: from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 059C2180034A; Fri, 21 Nov 2025 11:22:47 +0000 (UTC) Received: from rh.redhat.com (unknown [10.42.28.165]) by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id ED09030044DB; Fri, 21 Nov 2025 11:22:45 +0000 (UTC) From: Kevin Traynor To: Jiawen Wu Cc: dpdk stable Subject: patch 'net/txgbe: add device arguments for FDIR' has been queued to stable release 24.11.4 Date: Fri, 21 Nov 2025 11:20:12 +0000 Message-ID: <20251121112128.485623-28-ktraynor@redhat.com> In-Reply-To: <20251121112128.485623-1-ktraynor@redhat.com> References: <20251121112128.485623-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 3.4.1 on 10.30.177.4 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: XqfLQIXzx_Bqbq2h3Bw68uHF5fmQKUSZuOUbRA_KCQM_1763724167 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true 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 24.11.4 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 11/26/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/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/005e840cdfd8ef34e4430243ee3c5c93acb61038 Thanks. Kevin --- >From 005e840cdfd8ef34e4430243ee3c5c93acb61038 Mon Sep 17 00:00:00 2001 From: Jiawen Wu Date: Mon, 27 Oct 2025 11:15:31 +0800 Subject: [PATCH] net/txgbe: add device arguments for FDIR [ upstream commit 7e18be9beef25ee60f9c04f757cb4361706ff818 ] Since FDIR configuration is deprecated in generic ethdev device configuration and move it into the device private data, there is no way to configure the FDIR parameters. Two device arguments "pkt-filter-size" and "pkt-filter-drop-queue" are added, they just continue to use the previous naming convention. Fixes: 5007ac13189d ("ethdev: remove deprecated Flow Director configuration") Signed-off-by: Jiawen Wu --- drivers/net/txgbe/base/txgbe_type.h | 4 ++++ drivers/net/txgbe/txgbe_ethdev.c | 22 +++++++++++++++++++--- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/drivers/net/txgbe/base/txgbe_type.h b/drivers/net/txgbe/base/txgbe_type.h index 65527a22e7..0a5d98a4d1 100644 --- a/drivers/net/txgbe/base/txgbe_type.h +++ b/drivers/net/txgbe/base/txgbe_type.h @@ -700,4 +700,6 @@ struct txgbe_phy_info { #define TXGBE_DEVARG_FFE_PRE "ffe_pre" #define TXGBE_DEVARG_FFE_POST "ffe_post" +#define TXGBE_DEVARG_FDIR_PBALLOC "pkt-filter-size" +#define TXGBE_DEVARG_FDIR_DROP_QUEUE "pkt-filter-drop-queue" static const char * const txgbe_valid_arguments[] = { @@ -710,4 +712,6 @@ static const char * const txgbe_valid_arguments[] = { TXGBE_DEVARG_FFE_PRE, TXGBE_DEVARG_FFE_POST, + TXGBE_DEVARG_FDIR_PBALLOC, + TXGBE_DEVARG_FDIR_DROP_QUEUE, NULL }; diff --git a/drivers/net/txgbe/txgbe_ethdev.c b/drivers/net/txgbe/txgbe_ethdev.c index 554d41aeee..1a92cd26c9 100644 --- a/drivers/net/txgbe/txgbe_ethdev.c +++ b/drivers/net/txgbe/txgbe_ethdev.c @@ -498,6 +498,10 @@ txgbe_handle_devarg(__rte_unused const char *key, const char *value, static void -txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) +txgbe_parse_devargs(struct rte_eth_dev *dev) { + struct rte_eth_fdir_conf *fdir_conf = TXGBE_DEV_FDIR_CONF(dev); + struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev); + struct rte_devargs *devargs = pci_dev->device.devargs; + struct txgbe_hw *hw = TXGBE_DEV_HW(dev); struct rte_kvargs *kvlist; u16 auto_neg = 1; @@ -509,4 +513,7 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) u16 ffe_pre = 8; u16 ffe_post = 44; + /* FDIR args */ + u8 pballoc = 0; + u8 drop_queue = 127; if (devargs == NULL) @@ -533,4 +540,8 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) rte_kvargs_process(kvlist, TXGBE_DEVARG_FFE_POST, &txgbe_handle_devarg, &ffe_post); + rte_kvargs_process(kvlist, TXGBE_DEVARG_FDIR_PBALLOC, + &txgbe_handle_devarg, &pballoc); + rte_kvargs_process(kvlist, TXGBE_DEVARG_FDIR_DROP_QUEUE, + &txgbe_handle_devarg, &drop_queue); rte_kvargs_free(kvlist); @@ -544,4 +555,7 @@ null: hw->phy.ffe_pre = ffe_pre; hw->phy.ffe_post = ffe_post; + + fdir_conf->pballoc = pballoc; + fdir_conf->drop_queue = drop_queue; } @@ -632,5 +646,5 @@ eth_txgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused) hw->isb_mem = TMZ_VADDR(mz); - txgbe_parse_devargs(hw, pci_dev->device.devargs); + txgbe_parse_devargs(eth_dev); /* Initialize the shared code (base driver) */ err = txgbe_init_shared_code(hw); @@ -5696,5 +5710,7 @@ RTE_PMD_REGISTER_PARAM_STRING(net_txgbe, TXGBE_DEVARG_FFE_MAIN "=" TXGBE_DEVARG_FFE_PRE "=" - TXGBE_DEVARG_FFE_POST "="); + TXGBE_DEVARG_FFE_POST "=" + TXGBE_DEVARG_FDIR_PBALLOC "=<0|1|2>" + TXGBE_DEVARG_FDIR_DROP_QUEUE "="); RTE_LOG_REGISTER_SUFFIX(txgbe_logtype_init, init, NOTICE); -- 2.51.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-11-21 11:05:10.487522902 +0000 +++ 0028-net-txgbe-add-device-arguments-for-FDIR.patch 2025-11-21 11:05:09.415200964 +0000 @@ -1 +1 @@ -From 7e18be9beef25ee60f9c04f757cb4361706ff818 Mon Sep 17 00:00:00 2001 +From 005e840cdfd8ef34e4430243ee3c5c93acb61038 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 7e18be9beef25ee60f9c04f757cb4361706ff818 ] + @@ -14 +15,0 @@ -Cc: stable@dpdk.org @@ -19,2 +20,2 @@ - drivers/net/txgbe/txgbe_ethdev.c | 20 ++++++++++++++++++-- - 2 files changed, 22 insertions(+), 2 deletions(-) + drivers/net/txgbe/txgbe_ethdev.c | 22 +++++++++++++++++++--- + 2 files changed, 23 insertions(+), 3 deletions(-) @@ -23 +24 @@ -index 07b443c2e0..b5dbc9b755 100644 +index 65527a22e7..0a5d98a4d1 100644 @@ -26 +27 @@ -@@ -744,4 +744,6 @@ struct txgbe_phy_info { +@@ -700,4 +700,6 @@ struct txgbe_phy_info { @@ -31,3 +32,3 @@ - #define TXGBE_DEVARG_TX_HEAD_WB "tx_headwb" - #define TXGBE_DEVARG_TX_HEAD_WB_SIZE "tx_headwb_size" -@@ -757,4 +759,6 @@ static const char * const txgbe_valid_arguments[] = { + + static const char * const txgbe_valid_arguments[] = { +@@ -710,4 +712,6 @@ static const char * const txgbe_valid_arguments[] = { @@ -38,2 +39,2 @@ - TXGBE_DEVARG_TX_HEAD_WB, - TXGBE_DEVARG_TX_HEAD_WB_SIZE, + NULL + }; @@ -41 +42 @@ -index cbb2ea815f..e9bbf8ea72 100644 +index 554d41aeee..1a92cd26c9 100644 @@ -44 +45 @@ -@@ -525,6 +525,10 @@ txgbe_handle_devarg(__rte_unused const char *key, const char *value, +@@ -498,6 +498,10 @@ txgbe_handle_devarg(__rte_unused const char *key, const char *value, @@ -56 +57 @@ -@@ -536,4 +540,7 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) +@@ -509,4 +513,7 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) @@ -62,3 +63,3 @@ - /* New devargs for amberlite config */ - u16 tx_headwb = 1; -@@ -564,4 +571,8 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) + + if (devargs == NULL) +@@ -533,4 +540,8 @@ txgbe_parse_devargs(struct txgbe_hw *hw, struct rte_devargs *devargs) @@ -71,3 +72,3 @@ - rte_kvargs_process(kvlist, TXGBE_DEVARG_TX_HEAD_WB, - &txgbe_handle_devarg, &tx_headwb); -@@ -584,4 +595,7 @@ null: + rte_kvargs_free(kvlist); + +@@ -544,4 +555,7 @@ null: @@ -81 +82 @@ -@@ -672,5 +686,5 @@ eth_txgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused) +@@ -632,5 +646,5 @@ eth_txgbe_dev_init(struct rte_eth_dev *eth_dev, void *init_params __rte_unused) @@ -88 +89,2 @@ -@@ -6035,4 +6049,6 @@ RTE_PMD_REGISTER_PARAM_STRING(net_txgbe, +@@ -5696,5 +5710,7 @@ RTE_PMD_REGISTER_PARAM_STRING(net_txgbe, + TXGBE_DEVARG_FFE_MAIN "=" @@ -90 +92,2 @@ - TXGBE_DEVARG_FFE_POST "=" +- TXGBE_DEVARG_FFE_POST "="); ++ TXGBE_DEVARG_FFE_POST "=" @@ -92,3 +95,3 @@ -+ TXGBE_DEVARG_FDIR_DROP_QUEUE "=" - TXGBE_DEVARG_TX_HEAD_WB "=<0|1>" - TXGBE_DEVARG_TX_HEAD_WB_SIZE "=<1|16>" ++ TXGBE_DEVARG_FDIR_DROP_QUEUE "="); + + RTE_LOG_REGISTER_SUFFIX(txgbe_logtype_init, init, NOTICE);