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 3487648B69 for ; Fri, 21 Nov 2025 12:24:55 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2ED45402E6; Fri, 21 Nov 2025 12:24:55 +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 1ADCE402F0 for ; Fri, 21 Nov 2025 12:24:54 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763724293; 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=CUHO2AxPMcwFSZkD6sKmEojINaNEU2EcMdpYsTuWzWU=; b=ITQVrfDP/LnzAOjYKzpenA3ZpntCrfqGcu0mDYaDH3BKE0dveLj4KagT3WjwYmEfXN+ipp LGVlGvSL+B9HYdZ3IRCh285MR20zpr9rVnddp0sYzawvtwlrrG6j2+xUOLTZ6RQM9X496k Q9agVuwaeqL6E9qeDQt0ViXkla6KPYM= Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-300-31XXqor7NCyQH91YD8n_ug-1; Fri, 21 Nov 2025 06:24:52 -0500 X-MC-Unique: 31XXqor7NCyQH91YD8n_ug-1 X-Mimecast-MFC-AGG-ID: 31XXqor7NCyQH91YD8n_ug_1763724291 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-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 38BBA19560B7; Fri, 21 Nov 2025 11:24:51 +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 A44B830044DB; Fri, 21 Nov 2025 11:24:49 +0000 (UTC) From: Kevin Traynor To: Bing Zhao Cc: Dariusz Sosnowski , dpdk stable Subject: patch 'net/mlx5: move auxiliary data inline' has been queued to stable release 24.11.4 Date: Fri, 21 Nov 2025 11:21:20 +0000 Message-ID: <20251121112128.485623-96-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: qfmyVForM0tTHeVOwPxv-76PMwGicDCUgFuKIB9eZMY_1763724291 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/bd5f07d5b29c0ab37ad695cddfcce9595e4f9ec5 Thanks. Kevin --- >From bd5f07d5b29c0ab37ad695cddfcce9595e4f9ec5 Mon Sep 17 00:00:00 2001 From: Bing Zhao Date: Mon, 17 Nov 2025 09:27:52 +0200 Subject: [PATCH] net/mlx5: move auxiliary data inline [ upstream commit aff44ada9abc5831601e7dad5d48d9c6b5493f2d ] Since auxiliary structure is associated with per rule, it can be allocated in the same ipool allocation to save the extra overhead of the *alloc header and the unneeded CPU cycles. Fixes: 27d171b88031 ("net/mlx5: abstract flow action and enable reconfigure") Signed-off-by: Bing Zhao Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/linux/mlx5_os.c | 7 ++++--- drivers/net/mlx5/mlx5_flow_hw.c | 9 ++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c index f8197a22bc..5e07db199e 100644 --- a/drivers/net/mlx5/linux/mlx5_os.c +++ b/drivers/net/mlx5/linux/mlx5_os.c @@ -1645,6 +1645,5 @@ err_secondary: mlx5_link_update(eth_dev, 0); /* Watch LSC interrupts between port probe and port start. */ - priv->sh->port[priv->dev_port - 1].nl_ih_port_id = - eth_dev->data->port_id; + priv->sh->port[priv->dev_port - 1].nl_ih_port_id = eth_dev->data->port_id; mlx5_set_link_up(eth_dev); for (i = 0; i < MLX5_FLOW_TYPE_MAXI; i++) { @@ -1653,6 +1652,8 @@ err_secondary: icfg[i].per_core_cache = 0; #ifdef HAVE_MLX5_HWS_SUPPORT - if (priv->sh->config.dv_flow_en == 2) + if (priv->sh->config.dv_flow_en == 2) { icfg[i].size = sizeof(struct rte_flow_hw) + sizeof(struct rte_flow_nt2hws); + icfg[i].size += sizeof(struct rte_flow_hw_aux); + } #endif priv->flows[i] = mlx5_ipool_create(&icfg[i]); diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c index a1274c93f8..14e9f21e24 100644 --- a/drivers/net/mlx5/mlx5_flow_hw.c +++ b/drivers/net/mlx5/mlx5_flow_hw.c @@ -13269,6 +13269,7 @@ static int flow_hw_prepare(struct rte_eth_dev *dev, ((uintptr_t)(*flow) + sizeof(struct rte_flow_hw)); (*flow)->idx = idx; - (*flow)->nt2hws->flow_aux = mlx5_malloc(MLX5_MEM_ZERO, sizeof(struct rte_flow_hw_aux), - RTE_CACHE_LINE_SIZE, rte_dev_numa_node(dev->device)); + (*flow)->nt2hws->flow_aux = (struct rte_flow_hw_aux *) + ((uintptr_t)((*flow)->nt2hws) + sizeof(struct rte_flow_nt2hws)); + if (!(*flow)->nt2hws->flow_aux) return rte_flow_error_set(error, ENOMEM, @@ -13900,8 +13901,6 @@ flow_hw_destroy(struct rte_eth_dev *dev, struct rte_flow_hw *flow) * , same as for DV. */ - if (flow->nt2hws->flow_aux) { - mlx5_free(flow->nt2hws->flow_aux); + if (flow->nt2hws->flow_aux) flow->nt2hws->flow_aux = NULL; - } if (flow->nt2hws->rix_encap_decap) { flow_encap_decap_resource_release(dev, flow->nt2hws->rix_encap_decap); -- 2.51.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2025-11-21 11:05:12.574423317 +0000 +++ 0096-net-mlx5-move-auxiliary-data-inline.patch 2025-11-21 11:05:09.654201984 +0000 @@ -1 +1 @@ -From aff44ada9abc5831601e7dad5d48d9c6b5493f2d Mon Sep 17 00:00:00 2001 +From bd5f07d5b29c0ab37ad695cddfcce9595e4f9ec5 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit aff44ada9abc5831601e7dad5d48d9c6b5493f2d ] + @@ -11 +12,0 @@ -Cc: stable@dpdk.org @@ -21 +22 @@ -index e642e2664e..7f73183bb1 100644 +index f8197a22bc..5e07db199e 100644 @@ -24 +25 @@ -@@ -1644,6 +1644,5 @@ err_secondary: +@@ -1645,6 +1645,5 @@ err_secondary: @@ -32 +33 @@ -@@ -1652,6 +1651,8 @@ err_secondary: +@@ -1653,6 +1652,8 @@ err_secondary: @@ -43 +44 @@ -index f8995b53cc..c41b99746f 100644 +index a1274c93f8..14e9f21e24 100644 @@ -46 +47 @@ -@@ -13501,6 +13501,7 @@ static int flow_hw_prepare(struct rte_eth_dev *dev, +@@ -13269,6 +13269,7 @@ static int flow_hw_prepare(struct rte_eth_dev *dev, @@ -56 +57 @@ -@@ -14153,8 +14154,6 @@ flow_hw_destroy(struct rte_eth_dev *dev, struct rte_flow_hw *flow) +@@ -13900,8 +13901,6 @@ flow_hw_destroy(struct rte_eth_dev *dev, struct rte_flow_hw *flow)